EJB-вопрос без гражданства - PullRequest
       8

EJB-вопрос без гражданства

0 голосов
/ 26 сентября 2008

У нас есть EJB без состояния, который находится за веб-сервисами (EJB3), этот EJB также загружает EntityManager, который передается в выполняемых им вызовах. С этим у меня есть вопрос.

Используется ли для одновременного вызова веб-службы один и тот же EJB или существуют разные экземпляры? Я спрашиваю это особенно в отношении использования EntityManager, который вводится.

Спасибо

1 Ответ

3 голосов
/ 26 сентября 2008

До сервера приложений использовать то же или другое. Вы можете думать, как будто они были разными.

Теперь, если вы вводите его, я предполагаю, что вы объявили его как переменную экземпляра, это очень плохая идея для EJB без состояния, потому что хорошо. Не должно быть государства.

Вместо внедрения EntityManager позвольте серверу приложений выполнять свою работу, а вы просто берете его из контекста. Каждый вызов метода без сохранения состояния принадлежит транзакции и не будет мешать другим вызовам.

В итоге: предположим, что это разные экземпляры, и не вводите себе подобные объекты. Возьмите их из контекста, где сервер приложений отвечает, чтобы оставить их.

Надеюсь, я правильно понял ваш вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...