У вас нет никаких гарантий, что при использовании JNDI вы получите тот же экземпляр EJB, так же как и при внедрении зависимости с использованием @EJB
или @Inject
.Единственная разница между @EJB
и поиском JNDI - это SFSB.В этом случае контейнер должен предоставлять вам новый экземпляр SFSB каждый раз, когда вы используете поиск JNDI.
Однако, на мой взгляд, в EJB 3.x и в эпоху внедрения зависимостей легче понять @EJB
/ @Inject
аннотация.Нет необходимости передавать какие-либо ссылки на объекты, просто определите свои зависимости (соавторы EJB) в каждом EJB, используя @EJB
.