Глобальный модуль с ejbs - PullRequest
       29

Глобальный модуль с ejbs

0 голосов
/ 27 ноября 2018

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

Вот интерфейс:

@Remote

public interface ICryptoAPI..



and bean definition:

@Stateless

public class CryptoAPI implements ICryptoAPI ...

Как найти имя jndiиз развернутых ejbs, так как по умолчанию @Ejb не может найти bean?Отметим, что / subystem = naming: jndi-view () из jboss-cli ничего не печатает о развернутом модуле, и в журнале wildfly нет ошибок.

Возможно, невозможно определить инъекциюejbs в глобальных модулях?

1 Ответ

0 голосов
/ 28 ноября 2018

Имя переносимого JNDI , с которым связан EJB, зависит от того, как развернуты компоненты и некоторые конфигурации (например, дескрипторы развертывания).

В дополнение к переносимому имени JNDI, JBossобеспечивает доступ с удаленной виртуальной машины в пространстве имен java:jboss/exported.

Для вашего удобства в журнале JBoss по умолчанию отображаются имена JNDI, с которыми связан EJB, на консоли и в файле журнала сервера после развертывания.Регистратор имеет значение org.jboss.as.ejb3.deployment на уровне INFO.

Пример:

12:00:00,000 INFO  [org.jboss.as.ejb3.deployment] (MSC service thread 1-6) WFLYEJB0473: JNDI bindings for session bean named 'MyBean' in deployment unit 'subdeployment "my-beans.jar" of deployment "my-app.ear"' are as follows:

java:global/my-app/my-beans/MyBean!my.package.MyBeanRemote
java:app/my-beans/MyBean!my.package.MyBeanRemote
java:module/MyBean!my.package.MyBeanRemote
java:jboss/exported/my-app/my-beans/MyBean!my.package.MyBeanRemote

Для доступа к EJB вы можете выполнить поиск JNDI вручную или использовать аннотации @EJB метод поиска для инъекций.

...