как внедрить EJB в Java-класс - PullRequest
1 голос
/ 04 июля 2011

Я хочу внедрить EJB3 в класс Java, который не является EJB. эти классы находятся на одном сервере и в приложении.

Возможно ли это ... и если да ... то как?

Спасибо

Ответы [ 2 ]

3 голосов
/ 04 июля 2011

Возможно, вам следует предоставить больше информации о вашей рабочей среде. Использование CDI меняет весь спектр. Вы можете внедрить его, когда используете CDI, иначе вы можете внедрить его только в другие EJB и сервлеты (если ваш сервер приложений поддерживает это).

В противном случае вы можете выполнить поиск, используя

Context ctx = new InitialContext();
MyEjb ejb = (MyEjb) ctx.lookup("java:comp/env/myEjb");

Вы можете указать имя в аннотации @EJB, которое вы указали вместе с аннотацией @ Stateless / @ Stateful.

@Stateless
@EJB(name="myEjb", beanInterface=MyEjb.class)
public class myEjbImpl implements MyEjb{
   // code goes here
}
0 голосов
/ 04 июля 2011

Вы не можете внедрить его, но вы можете найти этот EJB:

Смотрите здесь: http://www.roseindia.net/ejb/ejb-lookup.shtml

Во время процесса развертывания вашего EJB вы можете увидеть Имявашего боба.

...