Boa noite galera, ja busquei e revirei tudo na net, mas não encontro uma solução que funcione para sanar o problema do lazy exception …
alguem tem alguma ideia de como resolver?
tenho 2 servidores 1 fica jboss 4.2.2 GA + EJB 3.0 , e no meu outro servidor está o Tomcat com JSF 1.2 + richfaces 3.2.1 … e quando tento buscar uma coleção que esta como Featch = Lazy me gera o lazy exception, como eu, como eu faço para fazer esse controle de sessão com EJB na minha view?
ja pesquisei o OpenSessionInView tbm mas as soluções que encontro não tem exemplos com EJB e sim com Hibernate, queria algum exemplo mais nao consigo achar de OpenEntityManagerInView
ATENTO AO DETALHE QUE NÂO ESTOU USANDO SPRING…
Boa noite, obrigado por responder…
sim como Eager funciona, mas ai terei problemas pois em muitos momentos quando trago um Entity ele tem muitos OneToMany e eu soh quero carregar essas List quando eu realmente precisar do dado…
[quote=faelcavalcanti]você pode utilizar criteria via restriction por exemplo utilizando FETCH. recomendo leitura: http://www.hibernate.org/hib_docs/reference/en/html/performance.html[/quote]
Bom dia, obrigado por responder,
mas não consigo usar o creteria pois estou usando EntityManager do JPA , e não o session do hibernate…
Alguem tem alguma outra ideia plzzz??
bateu uma saudade do guj e resolvi ver se tinha alguma dúvida q eu poderia ajudar
acho q essa aqui eu sei
vc tem duas opções aki:
Você precisar “usar” a lista enquanto estiver ainda na parte do container (ou seja… bastaria chamar um método do estilo: lista.Count())
essa solução me parece muito “gambiarristica”… mas lembro q eu a vi inclusive num livro do EJB3.0
a outra opção, que considero um pouco mais bonita é usar um “LEFT JOIN FETCH” para retornar a entidade
por exemplo:
from Department d LEFT JOIN FETCH d.employees
isso te retorna os Departamentos já com os empregados anexados
[quote=rruppel]faz uns 6 meses que parei de programar em java
bateu uma saudade do guj e resolvi ver se tinha alguma dúvida q eu poderia ajudar
acho q essa aqui eu sei
vc tem duas opções aki:
Você precisar “usar” a lista enquanto estiver ainda na parte do container (ou seja… bastaria chamar um método do estilo: lista.Count())
essa solução me parece muito “gambiarristica”… mas lembro q eu a vi inclusive num livro do EJB3.0
a outra opção, que considero um pouco mais bonita é usar um “LEFT JOIN FETCH” para retornar a entidade
por exemplo:
from Department d LEFT JOIN FETCH d.employees
isso te retorna os Departamentos já com os empregados anexados
espero q isso ajude
abraços
[/quote]
Boa tarde rruppel, muito obrigado pela dica, vou testar sua solução e depois posto os resultados!
[quote=Luan.Ibarra]Bom dia, obrigado por responder,
mas não consigo usar o creteria pois estou usando EntityManager do JPA , e não o session do hibernate…
Alguem tem alguma outra ideia plzzz??
Muito Obrigado[/quote]
qual versão do JPA você está utilizando ? desde maio temos a versão 2.0, e detêm de suporte a criteria sim, então porque não utilizá-lo?