Прежде всего, я думаю, что лучше понять, что не так с аннотацией, потому что внедрение бина проще и управление контейнером, а не вы.Поиск - это выбор, только когда вы пытаетесь получить доступ к ejb от другого jvm.
Во-вторых, ваш путь неверен.Вы используете module-name
вместо app-name
, а пакет Source - это специфическая среда IDE.Путь в JNDI основан на встроенном файле JAR.Как описано в спецификации EJB , глобальное имя создается по следующей схеме
java:global[/<app-name>]/<module-name>/<bean-name>[!<fully-qualified-interface-name>]
, где в вашем случае
app-name
обычно ухоname module-name
обычно EJB jar name (в вашем случае ejb1) bean-name
- это простое имя класса с аннотацией Stateless, Statefull, Singleton. interface name
каноническое имя реализованного интерфейса