У меня есть 3 проекта (использующих Maven): war, ejb и ear, и я сталкиваюсь с этой проблемой:
Мой war
проект имеет зависимость ejb
, поэтому я поставил ...
<dependency>
<groupId>my.company.name</groupId>
<artifactId>ejb-module</artifactId>
<version>1.0</version>
<type>ejb</type>
<scope>provided</scope>
</dependency>
... и ear
имеет ejb
и war
зависимости:
<dependency>
<groupId>my.company.name</groupId>
<artifactId>web-module</artifactId>
<version>1.0</version>
<type>war</type>
</dependency>
<dependency>
<groupId>my.company.name</groupId>
<artifactId>ejb-module</artifactId>
<version>1.0</version>
<type>ejb</type>
</dependency>
...
<configuration>
<filtering>true</filtering>
<version>7</version>
<modules>
<webModule>
<groupId>my.company.name</groupId>
<artifactId>web-module</artifactId>
<contextRoot>/</contextRoot>
</webModule>
<ejbModule>
<groupId>my.company.name</groupId>
<artifactId>ejb-module</artifactId>
</ejbModule>
</modules>
</configuration>
Во время развертывания я могу обновлять схему и создавать таблицы, последовательности, но когда я пытаюсьиспользую сессионный компонент, я всегда получаю javax.naming.NameNotFoundException: MySessionBean
, и это забавно, потому что я вижу на консоли JNDI bindings for session bean named 'MySessionBean'
в подразделе ejb-module
из ear
.
Я часами пытался понять, что яЯ скучаю, но я ничего не получил.Может ли это быть областью зависимости?