Невозможно ввести EJB в GWT ServiceImpl (JBoss 4.2) - PullRequest
2 голосов
/ 27 октября 2010

Я использую Eclipse 3.6 и Jboss 4.2.Я создал Enterprise Application с двумя модулями, EJB и WEB.

Я преобразовал WEB-модуль в приложение GWT (и добавил необходимые файлы - HTML и CSS).

Проблема в том,когда мне нужно ввести либо удаленный, либо локальный интерфейсы в сервлете GWTServiceImpl с помощью аннотации @EJB, а когда развернуть приложение в JBoss и запустить его с помощью браузера по умолчанию (т. е. в веб-режиме или в режиме prod), я получаю исключение NullPointerException, говорящее, чтоинтерфейс SLSB является нулевым.Что означает, что инъекций не было.

1 Ответ

1 голос
/ 27 октября 2010

Я столкнулся с той же проблемой (инъекций для полей @EJB не было) с Glassfish v3 некоторое время назадВ моем случае проблема заключалась в том, что GWT по умолчанию использует дескриптор развертывания версии 2.3.Когда я сменил его на 2.5 (или новее), это сработало.JBoss 4.2 поддерживает Servlet 2.5, поэтому вы можете использовать что-то вроде:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         id="WebApp_ID"
         version="2.5">

     ...

</web-app>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...