JBoss 6 - Разверните ejb в военной упаковке - PullRequest
3 голосов
/ 06 марта 2011

Я пытаюсь использовать новую функцию EJB3.1, где можно развернуть EJB, упакованный в файл .war.

Я использую Maven 2.2.1 для упаковки модуля EJB и затем отбрасываю ejbкувшин в военном модуле (как зависимость).Последняя война содержит простой web.xml без содержимого и библиотеку ejb jar в каталоге lib.Однако, хотя приложение развернуто правильно, аннотированный ejb (@Stateless) не распознается контейнером.У меня нет дескриптора ejb-jar.xml (который я считаю необязательным в EJB3).

Если я разверну jar-файл ejb самостоятельно (удалив его в каталог deploy в JBoss), он будет развернут назначеннымимя jndi.

Я что-то здесь упускаю?

1 Ответ

6 голосов
/ 07 марта 2011

Я нашел проблему на этом. Мой web.xml был версии 2.4:

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
  version="2.4">

Однако для развертывания EJB в военных пакетах оно должно быть не менее 3,0:

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
      version="3.0">

Это было связано главным образом с тем, что я создавал свой военный модуль с архетипом J2EE Maven.

...