Win a copy of AWS Security this week in the Cloud/Virtualization forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Paul Clapham
  • Jeanne Boyarsky
  • Junilu Lacar
  • Henry Wong
  • Ron McLeod
  • Devaka Cooray
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Frits Walraven
  • Tim Holloway
  • Carey Brown
  • Piet Souris
  • salvin francis
  • fred rosenberger

EJB_QL identification var problem

Ranch Hand
Posts: 85
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
EJB_QL identification variable problem

As per ejb2.0 spec identification variables in EJB-QL r case insensitive. But ven i used following in ejb-jar.xml with weblogic8.1
<ejb-ql><![CDATA[SELECT OBJECT(o) FROM DepartmentBean O]]></ejb-ql>

i got follwing exc..n while deploying the jar file
SELECT OBJECT( =>> o <<= ) FROM DepartmentBean O

EJB QL compilation encountered error: [EJB:013057]
Problem, in EJB QL the argument of OBJECT(o) in SELECT OBJECT(o) must be either a range variable ide
ntifier or a collection member identifier, either of which are defined in the query FROM clause as i
n 'SELECT OBJECT(e) FROM EmployeeBean AS e' or 'SELECT OBJECT(f) FROM EmployeeBean AS e, IN(e.friend
s)f'. 'o' is neither a range variable nor a collection member identifier.

Action, review the EJB QL query and correct the SELECT clause.

cn anyone explain me reazon for this?
Binoj V

PS:Weblogic8.1 implements EJB2.1.
Has this restriction on the identification variables removed in 2.1?
Ranch Hand
Posts: 211
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
EJB 2.1 is backward compatible with EJB 2.0. Could be a bug in Weblogic 8.1 ?
Ranch Hand
Posts: 1258
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Whereas most servers are backwards compatible to some extent, most will take the version of the DTD or your DD as an indicator of which version to treat it as. So, I would say, make sure you are deploying your app as 2.0 even though you're deploying into a server that does 2.1 and backwards 2.0. Make sense?
look! it's a bird! it's a plane! It's .... a teeny tiny ad
Devious Experiments for a Truly Passive Greenhouse!
    Bookmark Topic Watch Topic
  • New Topic