質問編集履歴
4
「試したこと」にNativeQueryを使った事を追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -294,6 +294,68 @@
|
|
294
294
|
|
295
295
|
|
296
296
|
|
297
|
+
(2016/09/08追記)
|
298
|
+
|
299
|
+
最適解かどうかはわからないのですが、NamedQueryを使うのを諦め、NativeQueryでObject型とすればテーブルのデータを取り出せることは確認できました。
|
300
|
+
|
301
|
+
```
|
302
|
+
|
303
|
+
public AAATbl[] selectAll() {
|
304
|
+
|
305
|
+
try {
|
306
|
+
|
307
|
+
String sql = "SELECT BBB,CCC FROM AAA_TBL";
|
308
|
+
|
309
|
+
List<AAATbl> dest = new ArrayList<>();
|
310
|
+
|
311
|
+
List<Object[]> list = (List<Object[]>) em.createNativeQuery(sql).getResultList();
|
312
|
+
|
313
|
+
Iterator it = list.iterator();
|
314
|
+
|
315
|
+
while (it.hasNext()) {
|
316
|
+
|
317
|
+
AAATbl data = new AAATbl();
|
318
|
+
|
319
|
+
Object[] obj = (Object[]) it.next();
|
320
|
+
|
321
|
+
int i = 0;
|
322
|
+
|
323
|
+
data.bbb((String) obj[i++]);
|
324
|
+
|
325
|
+
data.ccc((String) obj[i++])
|
326
|
+
|
327
|
+
dest.add(data);
|
328
|
+
|
329
|
+
}
|
330
|
+
|
331
|
+
AAATbl[] ret;
|
332
|
+
|
333
|
+
ret = (AAATbl[]) dest.toArray(new AAATbl[dest.size()]);
|
334
|
+
|
335
|
+
return ret;
|
336
|
+
|
337
|
+
} catch (NoResultException e) {
|
338
|
+
|
339
|
+
return null;
|
340
|
+
|
341
|
+
} catch (PersistenceException | DatabaseException databaseEx) {
|
342
|
+
|
343
|
+
logger.fatal(databaseEx);
|
344
|
+
|
345
|
+
return null;
|
346
|
+
|
347
|
+
} catch (Exception e) {
|
348
|
+
|
349
|
+
logger.fatal(e);
|
350
|
+
|
351
|
+
return null;
|
352
|
+
|
353
|
+
}
|
354
|
+
|
355
|
+
}
|
356
|
+
|
357
|
+
```
|
358
|
+
|
297
359
|
|
298
360
|
|
299
361
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
3
記載したエラーログとテーブル構造に誤りがありましたので訂正します
test
CHANGED
File without changes
|
test
CHANGED
@@ -28,7 +28,15 @@
|
|
28
28
|
|
29
29
|
エラーメッセージ
|
30
30
|
|
31
|
-
2016-09-06
|
31
|
+
2016-09-06 19:59:14,832 [http-nio-8080-exec-16] FATAL (AAA.java:48) - javax.persistence.PersistenceException: Exception [EclipseLink-6044] (Eclipse Persistence Services - 2.6.3.v20160428-59c81c5): org.eclipse.persistence.exceptions.QueryException
|
32
|
+
|
33
|
+
Exception Description: The primary key read from the row [ArrayRecord(
|
34
|
+
|
35
|
+
AAA_TBL.BBB => null
|
36
|
+
|
37
|
+
AAA_TBL.CCC => null)] during the execution of the query was detected to be null. Primary keys must not contain null.
|
38
|
+
|
39
|
+
Query: ReadAllQuery(name="AAATbl.findAll" referenceClass=AAATbl sql="SELECT BBB, CCC FROM AAA_TBL")
|
32
40
|
|
33
41
|
|
34
42
|
|
@@ -264,7 +272,7 @@
|
|
264
272
|
|
265
273
|
( "BBB" VARCHAR2(1 BYTE),
|
266
274
|
|
267
|
-
"CCC" VARCHAR2(1
|
275
|
+
"CCC" VARCHAR2(1 BYTE)
|
268
276
|
|
269
277
|
) SEGMENT CREATION IMMEDIATE
|
270
278
|
|
2
DBのテーブル構造を追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -254,7 +254,29 @@
|
|
254
254
|
|
255
255
|
```
|
256
256
|
|
257
|
-
|
257
|
+
### テーブル構造
|
258
|
+
|
259
|
+
実際のカラムは32個ありますが、"BBB","CCC"の2つに省略化して記載しています。
|
260
|
+
|
261
|
+
```
|
262
|
+
|
263
|
+
CREATE TABLE "DATABASE"."AAA_TBL"
|
264
|
+
|
265
|
+
( "BBB" VARCHAR2(1 BYTE),
|
266
|
+
|
267
|
+
"CCC" VARCHAR2(14 BYTE)
|
268
|
+
|
269
|
+
) SEGMENT CREATION IMMEDIATE
|
270
|
+
|
271
|
+
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS NOLOGGING
|
272
|
+
|
273
|
+
STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
|
274
|
+
|
275
|
+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
|
276
|
+
|
277
|
+
TABLESPACE "USERS" ;
|
278
|
+
|
279
|
+
```
|
258
280
|
|
259
281
|
###試したこと
|
260
282
|
|
@@ -271,3 +293,5 @@
|
|
271
293
|
環境はNetBeans(8.1)+TomEE(7.0.1)
|
272
294
|
|
273
295
|
JPAはEclipse Persistence Services - 2.6.3.v20160428-59c81c5を使用しています。
|
296
|
+
|
297
|
+
DataBaseは Oracle 11.2.0.1.0を使用しています。
|
1
TomcatEEと記載していましたがTomEEの誤りですので訂正します
test
CHANGED
File without changes
|
test
CHANGED
@@ -268,6 +268,6 @@
|
|
268
268
|
|
269
269
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
270
270
|
|
271
|
-
環境はNetBeans(8.1)+Tom
|
271
|
+
環境はNetBeans(8.1)+TomEE(7.0.1)
|
272
272
|
|
273
273
|
JPAはEclipse Persistence Services - 2.6.3.v20160428-59c81c5を使用しています。
|