Hibernate sem Lazy é possivel?

Pessoal, tenho uma aplicação web de pequeno porte, estou tendo problemas com o lazy pois fecho a session antes de necessitar dos atributos.

Existe alguma forma de o hibernate pegar todos os atributos do objeto sem necessitar de lazy ?

tenho uma pessoa com varios telefones (Vector), gostaria que quando pegar pessoa todos os telefones já estivessem carregados no pessoa.

Sei que o “custo” dessa operação é mais caro, mas é minha necessidade hoje.

Obrigado.

lazy=false

tu já tentou?

[quote=Leozin]lazy=false

tu já tentou?[/quote]

Obrigado pela resposta !

isso funciona sim, mas por exemplo quero emitir uma listagem de pessoas, ai não é interessante que venham todos os telefones de todas as pessoas, nesse caso como faria ?

Há como controlar lazy/eager nas interfaces que a api do Hibernate fornece para pegar dados. Um exemplo:

Pessoa -> Documentos // declarado lazy
Pessoa -> Telefones // declarado não-lazy

Supondo que quero pegar a lista de pessoas com todos os documentos já carregados, mas não preciso dos telefones:

Criteria criteria = session.createCriteria( Pessoa.class );
criteria.setFetchMode( "documentos", FetchMode.JOIN );
criteria.setFetchMode( "telefones", FetchMode.LAZY );
List pessoas = criteria.list();

Veja a documentação para outros tipos de FetchMode.

[quote=LIPE]Há como controlar lazy/eager nas interfaces que a api do Hibernate fornece para pegar dados. Um exemplo:

Pessoa -> Documentos // declarado lazy
Pessoa -> Telefones // declarado não-lazy

Supondo que quero pegar a lista de pessoas com todos os documentos já carregados, mas não preciso dos telefones:

Criteria criteria = session.createCriteria( Pessoa.class );
criteria.setFetchMode( "documentos", FetchMode.JOIN );
criteria.setFetchMode( "telefones", FetchMode.LAZY );
List pessoas = criteria.list();

Veja a documentação para outros tipos de FetchMode.[/quote]

era isso que eu precisava mesmo !!!

Obrigado LIPE 5 estrelas pra você !