Hibernate fetch=lazy

1 resposta
rodrigo.bossini

Oi pessoal,

Tenho uma classe Usuário com três List mapeadas no BD. Já descobri que não posso fazer fetch=eager em mais de uma List (ainda falta descobrir porque). Mas se deixo o fetch=lazy, quando vou usar as coleções para exibir uma página, tenho uma exceção dizendo que a sessão não está mais disponível. Intuitivamente, simplesmente comentei o “session.close()” do meu DAO e “resolvi” o problema. Em algum momento é claro que tenho que fechar a session, mas quando fazer isso?

Em geral, como se costuma fazer para lidar com multiplas lists mapeadas no banco? Quando fechar a sessão?

1 Resposta

Hebert_Coelho

Troque de List para Set.

Leituras que poderão te ajudar:
Quatro soluções para LazyInitializationException.


http://www.jroller.com/eyallupu/entry/hibernate_exception_simultaneously_fetch_multiple

Criado 8 de outubro de 2012
Ultima resposta 8 de out. de 2012
Respostas 1
Participantes 2