| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/04/2010 12:39:23
|
Flasoft
JavaGuru
![[Avatar]](/images/avatar/afb0b97df87090596ae7c503f60bb23f.jpg)
Membro desde: 22/05/2006 15:46:02
Mensagens: 230
Localização: Araraquara (SP interior)
Offline
|
@NamedQuery(name = "UsuarioBean.listarFuncionalidades", query = "SELECT u.perfil.relPerfilFuncionalidades.chaveComposta.funcionalidade.descricao FROM UsuarioBean u WHERE u.pontos >= u.perfil.relPerfilFuncionalidades.pontosMinimos AND u.idUsuario = UPPER(:idUsuario)")
lança o erro:
4625 [main] ERROR org.hibernate.impl.SessionFactoryImpl - Error in named query: UsuarioBean.listarFuncionalidades
org.hibernate.QueryException: illegal attempt to dereference collection [usuariobea0_.id_usuariousuariobea0_.id_perfilperfil.relPerfilFuncionalidades] with element property reference [chaveComposta] [SELECT u.perfil.relPerfilFuncionalidades.chaveComposta.funcionalidade.descricao FROM br.fs.videos.model.UsuarioBean u WHERE u.pontos >= u.perfil.relPerfilFuncionalidades.pontosMinimos AND u.idUsuario = UPPER(:idUsuario)]
at org.hibernate.hql.ast.tree.DotNode$1.buildIllegalCollectionDereferenceException(DotNode.java:6
at org.hibernate.hql.ast.tree.DotNode.checkLhsIsNotCollection(DotNode.java:564)
at org.hibernate.hql.ast.tree.DotNode.resolve(DotNode.java:225)
at org.hibernate.hql.ast.tree.DotNode.resolveFirstChild(DotNode.java:175)
at org.hibernate.hql.ast.HqlSqlWalker.lookupProperty(HqlSqlWalker.java:550)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.propertyRef(HqlSqlBaseWalker.java:1147)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.propertyRefLhs(HqlSqlBaseWalker.java:5167)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.propertyRef(HqlSqlBaseWalker.java:1133)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectExpr(HqlSqlBaseWalker.java:1993)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectExprList(HqlSqlBaseWalker.java:1932)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectClause(HqlSqlBaseWalker.java:1476)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:580)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:28
at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:231)
at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:254)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:185)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:136)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:101)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:80)
at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:94)
at org.hibernate.impl.SessionFactoryImpl.checkNamedQueries(SessionFactoryImpl.java:484)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:394)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1341)
...
Alguém sabe o porque?
Os nomes de campos estão todos corretos!
This message was edited 1 time. Last update was at 20/04/2010 12:39:52
|
Blog: http://flasoft.blogspot.com
SCJP5
Achoqueminhabarradeespaçosestácomproblemas
eU connsigg diggtar 500 caratereteres porr minito |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/04/2010 13:34:20
|
j0nny
GUJ Master
![[Avatar]](/images/avatar/2f37ce1ace06a770fab4452db0fe5c5f.png)
Membro desde: 19/09/2009 00:01:57
Mensagens: 1121
Localização: Blumenau - SC
Offline
|
Poste uma parte da sua classe mapeada!
|
@jntsdaniel
github.com/jonatasdaniel
---
AndOrm - Framework ORM para Android
http://github.com/jonatasdaniel/andorm |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/04/2010 15:11:36
|
Flasoft
JavaGuru
![[Avatar]](/images/avatar/afb0b97df87090596ae7c503f60bb23f.jpg)
Membro desde: 22/05/2006 15:46:02
Mensagens: 230
Localização: Araraquara (SP interior)
Offline
|
Acho q entendi como funciona...
Eu estava esperando mais do hibernate do que ele é capaz...
Antes estava assim:
Para funcionar eu fiz assim:
O que eu imaginava é que se existisse um caminho para chegar em meu resultado dando apenas GETs, eu poderia fazer em HQL que o hibernate se virava para me trazer o resultado!
Mas eu entendi (eu ACHO) que eu tenho que fazer exatamente como eu faria utilizando SQL... pensando da mesma forma, um EntityBean para cada tabela!
Certo?
|
Blog: http://flasoft.blogspot.com
SCJP5
Achoqueminhabarradeespaçosestácomproblemas
eU connsigg diggtar 500 caratereteres porr minito |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/04/2010 15:18:15
|
j0nny
GUJ Master
![[Avatar]](/images/avatar/2f37ce1ace06a770fab4452db0fe5c5f.png)
Membro desde: 19/09/2009 00:01:57
Mensagens: 1121
Localização: Blumenau - SC
Offline
|
Flasoft wrote:Acho q entendi como funciona...
Eu estava esperando mais do hibernate do que ele é capaz...
Antes estava assim:
Para funcionar eu fiz assim:
O que eu imaginava é que se existisse um caminho para chegar em meu resultado dando apenas GETs, eu poderia fazer em HQL que o hibernate se virava para me trazer o resultado!
Mas eu entendi (eu ACHO) que eu tenho que fazer exatamente como eu faria utilizando SQL... pensando da mesma forma, um EntityBean para cada tabela!
Certo?
Basicamente isso, cada classe anotada como Entity, representa uma tabela do seu banco, e que cada atributo dessa classe representa uma coluna da sua tabela.
|
@jntsdaniel
github.com/jonatasdaniel
---
AndOrm - Framework ORM para Android
http://github.com/jonatasdaniel/andorm |
|
|
 |
|
|