Ejb 3.0 + jsf + lazy exception urgente

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…

alguem poderia me dar uma luz por favorrr…

Muito Obrigado Galera

[]'s

Por acaso você já tentou anotar a coleção como EAGER ? Featch = Eager

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…

Posta o erro eo código assim agente consegue entender o scopo do problema !
Abraços

você pode utilizar criteria via restriction por exemplo utilizando FETCH. recomendo leitura:
http://www.hibernate.org/hib_docs/reference/en/html/performance.html

[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??

Muito Obrigado

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:

  1. 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

  2. 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 :wink:

espero q isso ajude

abraços

[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:

  1. 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

  2. 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 :wink:

espero q isso ajude

abraços
[/quote]
Boa tarde rruppel, muito obrigado pela dica, vou testar sua solução e depois posto os resultados!

Abraços!

[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? :wink: