Esse é o grande problema de trabalhar com clientes remotos. Usando EJB é comum ter esse tipo de problema também. Ou você cria DTO ou você cuida das suas entidades pra não acontecer esses problemas. EAGER em tudo é inviável, e sair inicializando tudo é bem perigoso também. O ideal e conhecer bem as view e crias os serviço o mais específico possível pra não fazer dezenas de selects desnecessários. Só não fique muito preocupado com isso, não esqueça que o próprio Joshua Bloch fala que um dos maiores problemas que podemos ter é a otimização precoce ( http://www.infoq.com/articles/bloch-effective-java-2e)
Recentemente fiquei sabendo do projeto dphibernate que teoricamente resolve isso, mas ainda não testei (http://code.google.com/p/dphibernate/) Outra opção é o DTOManager que dá uma força pra criar os DTOs ( http://github.com/bfuster/dtomanager) 2009/12/22 Daniel Rodrigues da Cunha Frank <fr...@projetusinformatica.com.br > > Realmente pensei em fazer um filter, ou até mesmo criar um JavaAdapter > customizado, minha pergunta na lista é justamente para saber se alguém já > fez algo assim e até mesmo para receber dicas (como a sua, do filter). > O que acontece é que se eu fechar o em no serviço quando o Blaze vai > serializar o objeto ele chama os métodos marcados como Lazy e como o em já > está fechado, dá erro. Eu poderia colocar tudo como Eager, mas existem > processos que ocorrem no servidor que ficariam muito pesados dessa forma. > > Daniel R.C.Frank > Análise e Programação > > > 2009/12/22 David Paniz <davidpa...@gmail.com> > >> Se você está usando o blaze você deve ter uma servlet mapeada. Será que >> usar um filter com mesmo url-pattern não basta para o seu caso? >> >> Honestamente acho que ainda não entendi direito o seu problema. Você está >> usando o mesmo "serviço" tanto pra uma view Flex quanto pra uma outra >> "tradicional" e quer forçar fechar o EM só quando for a do flex? >> >> >> 2009/12/22 Daniel Rodrigues da Cunha Frank < >> fr...@projetusinformatica.com.br> >> >> David, >>> >>> É por isso que eu desejo sabe se tem como colocar um ouvidor para fechar >>> o em apenas após o término da requisição, pois assim, embora eu perca o >>> LazyLoading >>> para a minha view, eu posso continuar usando ela para outros processos. >>> >>> Daniel R.C.Frank >>> Análise e Programação >>> >>> >>> 2009/12/22 David Paniz <davidpa...@gmail.com> >>> >>> Usando o BlazeDS as requisições do Flex são bem diferentes das >>>> requisições "normais" onde o próprio servidor monta a view. Você não pode >>>> esquecer que o flex é código que está rodando no browser do cliente, então >>>> não tem controle de mais nada depois que o código do servidor acabou, >>>> diferente de JSP ou JSF. Por isso você sempre deve "fechar" o EM no término >>>> do seu "service". Infelizmente a gente acaba perdendo alguns benefícios >>>> como >>>> o LazyLoading. >>>> >>>> 2009/12/21 Daniel Rodrigues da Cunha Frank < >>>> fr...@projetusinformatica.com.br> >>>> >>>>> Boa noite, >>>>> >>>>> Estou estudando JPA (JPA + EclipseLink) e gostaria de saber se existe >>>>> alguma forma de 'ouvir' o fim da requisição do Flex (RemoteObject) para >>>>> que >>>>> eu possa fechar o EntityManager? >>>>> >>>>> Desde já agradeço a atenção de todos, >>>>> >>>>> Daniel R.C.Frank >>>>> Análise e Programação >>>>> >>>>> -- >>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>>> Para enviar uma mensagem, envie um e-mail para >>>>> flexdev@googlegroups.com >>>>> Para sair da lista, envie um email em branco para >>>>> flexdev-unsubscr...@googlegroups.com >>>>> Mais opções estão disponíveis em >>>>> http://groups.google.com/group/flexdev >>>> >>>> >>>> >>>> >>>> -- >>>> David Paniz >>>> http://www.davidpaniz.com >>>> >>>> -- >>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com >>>> Para sair da lista, envie um email em branco para >>>> flexdev-unsubscr...@googlegroups.com >>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >>> >>> >>> -- >>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com >>> Para sair da lista, envie um email em branco para >>> flexdev-unsubscr...@googlegroups.com >>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >>> >> >> >> >> -- >> David Paniz >> http://www.davidpaniz.com >> >> -- >> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com >> Para sair da lista, envie um email em branco para >> flexdev-unsubscr...@googlegroups.com >> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >> > > -- > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com > Para sair da lista, envie um email em branco para > flexdev-unsubscr...@googlegroups.com > Mais opções estão disponíveis em http://groups.google.com/group/flexdev > -- David Paniz http://www.davidpaniz.com -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev