So likeIgnoreCase in not supported at all? Is there some workaround?
2009/12/4 Andrus Adamchik <andru..bjectstyle.org>
> "likeIgnoreCase" is not valid in EJBQL. Although the error message refers
> to something else... strange...
>
>
>
> On Dec 4, 2009, at 4:12 AM, Dave Lamy wrote:
>
> Hey guys--
>>
>> I'm really just now getting into using the EJBQLQuery and am having some
>> difficulties. I don't know whether I'm doing something fundamentally
>> wrong
>> or what.
>>
>> Here's my EJBQL expression that I'm trying to get parsed (running 3.0B1):
>>
>> select COUNT(foo) from ProductCollection foo where
>> foo.productStyles.taxonomy likeIgnoreCase '323.%'
>>
>> Parsing this query yields the following exception:
>>
>>
>> org.apache.cayenne.ejbql.parser.ParseException: Encountered " <IDENTIFIER>
>> "foo "" at line 1, column 53.
>> Was expecting:
>> "(" ...
>>
>> at
>>
>> org.apache.cayenne.ejbql.parser.EJBQL.generateParseException(EJBQL.java:9419)
>> at
>> org.apache.cayenne.ejbql.parser.EJBQL.jj_consume_token(EJBQL.java:9298)
>> at
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_primary(EJBQL.java:1933)
>> at
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_factor(EJBQL.java:1911)
>> at
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_term(EJBQL.java:1776)
>> at
>>
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_expression(EJBQL.java:1738)
>> at
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_primary(EJBQL.java:1928)
>> at
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_factor(EJBQL.java:1911)
>> at
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_term(EJBQL.java:1776)
>> at
>>
>> org.apache.cayenne.ejbql.parser.EJBQL.conditional_expression(EJBQL.java:1738)
>> at org.apache.cayenne.ejbql.parser.EJBQL.where_clause(EJBQL.java:1585)
>> at org.apache.cayenne.ejbql.parser.EJBQL.select_statement(EJBQL.java:69)
>> at org.apache.cayenne.ejbql.parser.EJBQL.parseQuery(EJBQL.java:41)
>> ...
>>
>> The statement looks legit to me. Is there like a fundamental something
>> I'm
>> not understanding about EJBQL? I saw some docs that showed doing this
>> sort
>> of join alias "IN" thing,
>>
>> SELECT OBJECT(e) FROM Department d, IN(d.employees) e
>> WHERE d.name = ?1 AND e.salary > ?2
>>
>> My problem is that I'm using Expression.toEJBQL() to gen the where
>> clause..
>> was hoping to not have to recreate my code that generates the Expression
>> object.
>>
>> Help!
>>
>> Dave
>>
>
>
-- Andrey
This archive was generated by hypermail 2.0.0 : Thu Dec 17 2009 - 07:06:00 EST