Ah yeah, now checking the code I am starting to remember. Arithmetic expressions are not allowed in SELECT clause, only in WHERE. There's no real reason for it other then us initially basing EJBQL parser on some early JPA spec that probably didn't support it. We need to add it to the parser. For now it won't work.
Andrus > On Aug 15, 2016, at 5:49 PM, Hugi Thordarson <[email protected]> wrote: > > Hi Andrus, > >> On 15. ágú. 2016, at 06:30, Andrus Adamchik <[email protected]> wrote: >> >> Hi Hugi, >> >> Sorry for delayed reply. I swear we had the BNF for EJBQL in the docs, but >> apparently we don't. Here is the closest thing to it - a JavaCC grammar: >> >> https://github.com/apache/cayenne/blob/master/cayenne-server/src/main/jjtree/org/apache/cayenne/ejbql/EJBQLParser.jjt >> >> We do support simple arithmetic operations. Search for 'arithmetic_' clauses >> in the .jjt. > > I’m not as smart as you think—I haven’t touched JavaCC grammar before, though > I could figure it out but I don’t see how to do this :). Can you tell me how > I can do something equivalent to “select e.price*e.quantity from Entry e”? > > Cheers, > - hugi
