Может ли CDI вводить удаленные экземпляры моего Бина? - PullRequest
5 голосов
/ 17 июня 2011

Может ли CDI вставлять ссылки EJB в мой удаленный EJB-клиент?

На самом деле у меня есть тестовый пример JUnit, который запускается локально в моей системе и имеет доступ к EJB, работающему на автономной JBoss AS.В настоящее время я использую JNDI для доступа к удаленному бизнес-интерфейсу компонента и тестирую его.

Я хотел бы знать, может ли @Inject помочь мне внедрить мой экземпляр EJB непосредственно в мой тестовый пример, чтобы я мог избежать поиска JNDI и по-прежнему получать доступ к EJB?

1 Ответ

7 голосов
/ 17 июня 2011

Не переносимо. Из спецификации CDI:

Неограниченный набор типов бобов для сессионный компонент содержит все локальные интерфейсы бина и их суперинтерфейсы. Если сессионный компонент имеет локальный вид класса бобов, неограниченный набор типов бобов содержит класс бина и все суперкласса. К тому же, java.lang.Object - это тип бобов каждый сессионный компонент.

Удаленные интерфейсы не включены в набор типов бобов.

...