Tim is correct. App Engine's JDO implementation doesn't support any features
that aren't directly supported by the datastore, including LIKE filters.
Hence the UnsupportedDatastoreFeatureException.

If you have any more JDO-related questions, please post them in the Google
App Engine for Java group:

http://groups.google.com/group/google-appengine-java

- Jason

On Thu, Apr 30, 2009 at 6:11 PM, Tim Hoffman <zutes...@gmail.com> wrote:

>
> HI Basil
>
> Unfortunately 'like' isn't supported. The underlying datastore has no
> such capability
> despite your ability to define it in JDO.
>
> T
>
> On May 1, 12:44 am, Basil Dsouza <bas...@gmail.com> wrote:
> > Hello,
> >
> > I am a newbie in JDO (been trying it for about 2 days) and I am facing
> > writing queries to retrieve data. I dont know if this is a problem
> > specifically with the google supported implementation of JDO or
> > something i am doing wrong.
> >
> > I am trying to write a where containing the equivalent of the "LIKE"
> > keyword.
> > Specifically I am doing:
> > query.setFilter("firstName.matches(firstNameParam) && lastName.matches
> > (lastNameParam)");
> >
> > this is what i found on the net, though it doesnt work (
> http://www.theserverside.com/tt/articles/article.tss?l=JDOQueryPart1)
> >
> > The error I get is:
> > Apr 30, 2009 9:51:27 PM com.google.apphosting.utils.jetty.JettyLogger
> > warn
> > WARNING: Nested in org.apache.jasper.JasperException:
> > org.datanucleus.store.appengine.query.DatastoreQuery
> > $UnsupportedDatastoreFeatureException: Problem with query <SELECT FROM
> > com.basildsouza.odometer.datalayer.dataobjects.User WHERE
> > firstName.matches(firstNameParam) && lastName.matches(lastNameParam)
> > PARAMETERS String firstNameParam, String lastNameParam ORDER BY
> > lastName asc, firstName asc>: Unexpected expression type while parsing
> > query: org.datanucleus.query.expression.InvokeExpression:
> > org.datanucleus.store.appengine.query.DatastoreQuery
> > $UnsupportedDatastoreFeatureException: Problem with query <SELECT FROM
> > com.basildsouza.odometer.datalayer.dataobjects.User WHERE
> > firstName.matches(firstNameParam) && lastName.matches(lastNameParam)
> > PARAMETERS String firstNameParam, String lastNameParam ORDER BY
> > lastName asc, firstName asc>: Unexpected expression type while parsing
> > query: org.datanucleus.query.expression.InvokeExpression
> >
> > I have tried the like clause directly, and predictably, that didnt
> > work.
> >
> > Any clues as to how should I get this working? Or should I be asking
> > this on a JDO forum?
> >
> > Thanks and Regards,
> > Basil Dsouza
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to