I have got a doubt in regards to q.11 on p.428 of HFEJB book.
Question lists the following query
select distinct object(c) from Customer c, in (c.Order) o, in (o.lineItems) li where li.product_type = 'refrigerator'
I think that this query is invalid because of (c.Order) collection valued path expression - Order cannot be a valid cmr-field as it does not start with the lower case as specified in the spec (section 10.3.1):
The container-managed persistent fields and container-managed relationship fields must be specified in the deployment descriptor using the cmp-field and cmr-field elements respectively.The names of these fields must be valid Java identifiers and must begin with a lowercase letter, as determined by java.lang.Character.isLowerCase.
I have searched the spec hoping that it would tell me that cmr fields are case insensitive when used in ejb-ql path expressions. Could not find anything. As far as I understand only reserved words (eg, unknown/as/not etc.) and identifiers are case insensitive in ejb-ql.
I'd greatly appreciate your thoughts on this subject.