Hi,
i'm using Cayenne 2.0.4 with Oracle 10 and JDK 1.5.
Please have a short look at this code:
... dataCtx, myID are set...
SQLTemplate rawQuery =
(SQLTemplate)dataCtx.getEntityResolver().lookupQuery("myQuery");
Map<String,Object> params = new HashMap<String,Object>();
params.put("processID", myID);
rawQuery.setParameters(params);
rawQuery.setPageSize(50);
List<?> protList = dataCtx.performQuery(rawQuery);
...
On runtime the follwoing Exception ist thrown:
java.lang.IllegalArgumentException: org.apache.cayenne.query.SelectQuery:
"setRoot(..)" takes a DataMap, String, ObjEntity, DbEntity, Procedure, or
Class. It was passed a null
at
org.apache.cayenne.query.AbstractQuery.setRoot(AbstractQuery.java:104)
at org.apache.cayenne.query.SelectQuery.init(SelectQuery.java:143)
at org.apache.cayenne.query.SelectQuery.<init>(SelectQuery.java:83)
at org.apache.cayenne.query.SelectQuery.<init>(SelectQuery.java:72)
at
org.apache.cayenne.access.IncrementalFaultList.<init>(IncrementalFaultList.java:129)
at
org.apache.cayenne.access.DataContextQueryAction.interceptPaginatedQuery(DataContextQueryAction.java:92)
at
org.apache.cayenne.access.DataContextQueryAction.execute(DataContextQueryAction.java:50)
at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:1395)
at
org.apache.cayenne.access.DataContext.performQuery(DataContext.java:1384)
..... more
The mapped query is configured to fetch DataRows.
The cause seems to be the method setPageSize(): if I omit this method, all
works fine. I cannot find any restrictions for setPageSize and SQLTemplate in
the documentation.
Does anybody know what's going on here ?
Thanks in advance
Jens
--
Ist Ihr Browser Vista-kompatibel? Jetzt die neuesten
Browser-Versionen downloaden: http://www.gmx.net/de/go/browser