e ai pessoal, estou com um seguinte problema. Estou usando Wizard do primefaces e jpa para fazer a edição dos dados. Para inserir nenhum problema, mas editar preciso carregá-los e daí que o problema começa.
Tenho uma entidade com relacionamentos @ElementCollection e @oneToMany para outras entidades, as quais também tem relacionamentos @ElementCollection.
Todavia quando vou requisitar seus valores tenho o seguinte erro : org.hibernate.LazyInitializationException: could not initialize proxy - no Session
Sei que as anotações acima são Lazy por default,e a trasação foi fechada.Logo se anoto as listas com EAGER tenho o seguinte erro : fetch multiple bags.
Logo tentei então carregar por query minhas tabela, por exemplo:
Select p from Cesta p join fetch p.palavraChave join fetch p.idioma where p.id = ?1
Mas obtive o erro de fetch multiple bags novamente.
Não sei qual seria o melhor jeito para carregar estes dados, terei que fazer query para todas as minhas tabelas ? não há um jeito mais fácil para isso?
Vi Hebert seu blog, muito bom mesmo, vi as soluções para LazyInitializationException.
Caso eu queira implementar a OSIV para JPA, teria que mudar todos meus DAOs e meu JPAUtil?
Estava carregando cada lista e até ai tudo bem.
Mas ao dar next no componente wizard do primefaces ele dava o erro de lazy mesmo eu tendo carregado os dados da lista por query.
Coloquei uma tabela para mostrar os dados em uma página e os dados apareceram.
Será que à medida que eu passo o wizard os dados não permanecem?
[quote=ATEN]Vi Hebert seu blog, muito bom mesmo, vi as soluções para LazyInitializationException.
Caso eu queira implementar a OSIV para JPA, teria que mudar todos meus DAOs e meu JPAUtil?
Estava carregando cada lista e até ai tudo bem.
Mas ao dar next no componente wizard do primefaces ele dava o erro de lazy mesmo eu tendo carregado os dados da lista por query.
Coloquei uma tabela para mostrar os dados em uma página e os dados apareceram.
Será que à medida que eu passo o wizard os dados não permanecem?
[]s e valeu pela ajuda
[/quote]Sim, algumas alterações serão necessŕias.
Veja se todas as listas necessárias estão sendo carregadas. Alguma pode estar ficando para trás.