Usando >=, <= e BETWEEN em EJB-QL

0 respostas
martui

:scrambleup: Estou trabalhando (ralando, batendo a cabeça, tentando fazer rodar) em uns EJBs (mais precisamente EntityBeans CMP no JBoss 4) e, criando um finder (que recebe 3 argumentos: java.sql.Date dataInicial, java.sql.Date dataFinal, BigDecimal cnpj, nessa ordem). O que acontece é o erro seguinte durante o deploy (o bean que tem o referido finder chama-se Declaracao)

“Deploy no JBoss 4”:
MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM:
ObjectName: jboss.j2ee:jndiName=Pessoa,plugin=pool,service=EJB
state: CREATED
I Depend On:
Depends On Me:
ObjectName: jboss.j2ee:jndiName=Pessoa,service=EJB
state: FAILED
I Depend On:
Depends On Me: org.jboss.deployment.DeploymentException: Error compiling EJB-QL statement ‘SELECT OBJECT(d) FROM Declaracao d WHERE d.cnpj=?3 AND d.data BETWEEN ?1 AND ?2’; - nested throwable: (org.jboss.ejb.plugins.cmp.ejbql.ParseException: Encountered “BETWEEN” at line 1, column 114.
Was expecting one of:
">" …
"<" …
"=" …
"<>" …
)

:arrow: Detalhes: o erro ocorreu com o seguinte query EJB-QL (ou tem um pouco que JBoss-QL também? Não sei):

:arrow: Mas eu também tentei fazer deploy com o query:

e também deu erro:

“Deploy no JBoss 4”:
MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM:
ObjectName: jboss.j2ee:jndiName=Pessoa,plugin=pool,service=EJB
state: CREATED
I Depend On:
Depends On Me:
ObjectName: jboss.j2ee:jndiName=Pessoa,service=EJB
state: FAILED
I Depend On:
Depends On Me: org.jboss.deployment.DeploymentException: Error compiling EJB-QL statement ‘SELECT OBJECT(d) FROM Declaracao d WHERE d.cnpj=?3 AND d.data>=?1 AND d.data<=?2’; - nested throwable: (org.jboss.ejb.plugins.cmp.ejbql.ParseException: Encountered “>=” at line 1, column 114.
Was expecting one of:
">" …
"<" …
"=" …
"<>" …
)

O que está errado? Como resolver isso?

Criado 5 de outubro de 2004
Respostas 0
Participantes 1