Cursors are not supported for queries that use IN (contains) because
under the covers they are broken into multiple queries and merged
together.
http://code.google.com/appengine/docs/java/datastore/queriesandindexes.html#Query_Cursors
On 9 Mar 2010, at 03:21, atomi wrote:
I'm trying to get cursors working with a result set but the
JDOCursorHelper.getCursor() method returns null for every query
result that is greater than 1
here is my entity method
Item entity:
@Element(dependent = "true")
@Persistent(defaultFetchGroup="true",loadFetchGroup="true")
List<String> comments = new ArrayList<String>();
def getComments() {
List comments
List results
if (this.comments.isEmpty()) {
return this.comments
}
PersistenceManager pm = PMF.get().getPersistenceManager()
try {
javax.jdo.Query q = pm.newQuery("select from " +
Comment.class.getName() +
" where :keys.contains(key)")
q.setOrdering("datetime desc");
q.setRange(0, 5);
results = q.execute(this.comments);
Cursor cursor = JDOCursorHelper.getCursor(results);
if(cursor != null){
this.cursorString = cursor.toWebSafeString();
}
comments = pm.detachCopyAll((List) results)
comments.size();
return comments
} finally {
pm.close()
}
}
Can someone tell me why?
--
You received this message because you are subscribed to the Google
Groups "Google App Engine for Java" group.
To post to this group, send email to [email protected]
.
To unsubscribe from this group, send email to [email protected]
.
For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en
.
--
You received this message because you are subscribed to the Google Groups "Google
App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=en.