Получите ссылку на локальный бизнес-интерфейс EJB3 внутри адаптера JCA - PullRequest
1 голос
/ 15 марта 2010

Я хотел бы знать, возможно ли получить ссылку на локальные бизнес-интерфейсы ejb3 внутри адаптера jca?

Адаптер ресурсов и ejb .jar упакованы в одно и то же .ear. Приложение работает в WebSphere AS 6.1 с пакетом функций ejb3.

Я пытался использовать ejblocal:<full_class_name_of_local_interface> в качестве имени JNDI, но безуспешно.

1 Ответ

2 голосов
/ 15 марта 2010

То, что вы пытаетесь сделать, вероятно, концептуально неправильно . Адаптер JCA не должен зависеть от EJB - адаптер JCA не должен искать EJB.

Но адаптеры JCA работают для входящих и исходящих соединений. Правильный способ связи JCA-коннектора с EJB (входящее соединение) через бин, управляемый сообщениями ( MDB ).

  1. Адаптер JCA определяет интерфейс, который будет использоваться для связи.
  2. Тогда пользовательский MDB может реализовать этот интерфейс и может получать входящие запросы от адаптера.

Я согласен с тем, что в данном случае название "bean-объект, управляемый сообщениями" вводит в заблуждение. Пользовательский MDB действительно похож на EJB и принимает вызовы от разъема JCA. Это не обязательно связано ни с сообщением, ни с асинхронной обработкой. Если вы хотите, чтобы пользовательский MDB мог искать или использовать другой EJB для делегирования обработки.

Лучшим документом для рассмотрения является " Создание адаптера ресурсов с архитектурой J2EE Connector 1.5". В нем приведен пример для входящих и исходящих соединений. Соответствующий код можно найти в примерах J2EE, которые поставляются с SDK.

...