Esse é um problema que eu tive não só com ejb mas também com backbeans. A solução para esse problema pelos menos até onde entendi seria usando o SpringFramework. Ou utilizar uma solucão do proprio hibernate, pois trata-se de um pequeno bug de implementação da JPA.
Nesse link, https://www.hibernate.org/43.html , tem a solução do problema utilizando Hibernate. O texto está em ingles. No meu caso eu coloquei as regras de persistencia direto no backbean.
grato,
Thiago Moreno
innfocco
O que acontece é que quando o entity sai do EJB de persist e vai para o EJB de controle a sessão (do jpa) é encerrada e aí quando vc tenta acessar os lazyes já estão mortos.
Uma solução interessante é o Gilead mas é meio complexo de se entender