@PersistenceContext EntityManager em um Stateless Bean

3 respostas
brunohansen

Olá, Pessoal.

Existe algum problema em usar @PersistenceContext EntityManager em um Stateless Bean?

O EntityManager é thread safe?

Por ser um bean stateless várias conexões vão acessar o mesmo EntityManager, não é isso? Existe algum problema nisso?

Sou muito Novato em JEE, estou cheio de dúvidas e receios. Conto com a ajuda de vocês!

[]s

3 Respostas

jacker

O EntityManager não é thread safe. Mas na minha visão não existe problema algum pq desta forma que vc pretende usar ele irá tratá-lo como se fosse. Um bean Stateless nunca vai gerar concorrência pq o container irá gerar novas instâncias do bean para atender vários clientes. Esse assunto é bastante discutido na internet, se fizer algumas pesquisas tenho certeza que irá encontrar mais.

Abraço e boa pesquisa!

johnny_quest

Então,

estou estudando EJB, comprei um livro muito bom, e te indicaria tb…

Enterprise JavaBeans 3.0.

No livro explica que não existe concorrencia nos Beans de Sessão com estado e sem estado,
porque não faz sentido existir concorrencia em um Bean que serve à um cliente,
e em beans de sessão sem estado é limitado ao escopo de cada chamada de método.

A cada nova requisição de chamada de método local ou remoto o próprio server
EJB se encarrega de alocar um session Bean, que ao contrario dos servlets,
não existe apenas uma instancia rodando.

brunohansen

É pessoal… desculpa a minha ignorância!

Na apostila da Caelum esta escrito assim: “Como as instâncias podem ser compartilhadas (não simultaneamente) por diversos clientes, um atributo pode ser lido e/ou modificado por mais de um cliente.”

Minha falta de atenção me fez não reparar os parênteses!

Desculpe-me mais uma vez!

Criado 2 de dezembro de 2010
Ultima resposta 2 de dez. de 2010
Respostas 3
Participantes 3