Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Dúvida sobre Session Bean

O container ao devolver o Session Bean para o pool devolve com os objetos que o utilizou carregados, em meus testes ao reutilizar um Session Bean vi que os objetos já vinham com o valor da última utilização preenchidos, isso pode ser um problema no consumo de memória da jvm ou estou enganado? Existe alguma forma de "esvaziar " esse session bean ao terminar de usar?

4 respostas

Oi Humberto, vc não precisa se preocupar com este tipo de detalhe. O valor dos atributos é mantido no objeto pq ele é Stateless, então não tem problema, ou não deveria. Se fosse stateful, o próprio container limparia o estado, para não influenciar o cliente do objeto.

Alberto, pra tentar exemplificar imagine um objeto com diversas informações em um EJB stateless, quando devolver esse EJB ao pool ele irá com essas informações. Agora imagine diversos EJB`s com o mesmo comportamento. Minha dúvida é: Como fica a memória da JVM? Imagine várias aplicações rodando em um mesmo servidor, como ficaria a performance?

solução!

Então, vc realmente não precisa se preocupar.. O container, se perceber que tem stateless demais, vai liberar a referência deles e o GC vai coletar em algum momento.A situação que vc ta colocando, de uma das classes ter diversos atributos e tal e cada um desses atributos referenciarem objetos gigantes é realmente ruim.. mas seria ruim para qualquer situação...

Obrigado Alberto!