L'injection d'EJB en servlet

J'ai googlé sans chance pour essayer de comprendre pourquoi Weblogic 10.3.4 ne pas injecter de l'EJB dans annotée champ dans la servlet.

Oreille contient ejb.jar la définition de DAO EJB et web.la guerre avec TestServlet.

PluginDataDAO.java

@Stateless
public class PluginDataDAO implements IPluginDataDAO {

}

IPluginDataDAO.java

@Local
public interface IPluginDataDAO  {

}

TestServlet.java

public class TestServlet extends HttpServlet {
    @EJB(mappedName = "PluginDataDAO")
    private IPluginDataDAO pluginDataDAO;
}

web.xml

<web-app version="2.5" 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">
<servlet>
    <servlet-name>TestServlet</servlet-name>
    <servlet-class>cz.literak.blog.j2ee.TestServlet</servlet-class>
</servlet>

Servlet est à l'intérieur de web.la guerre, EJB dans le ejb.jar. J'ai essayé l'annotation avec/sans mappé attribut de nom, mais sans succès. Quand j'ai essayé de mettre à niveau web.xml à 3.0, le déploiement a échoué 3.0 est pas énumérés. Quel est le problème? Pourquoi est-pluginDataDAO toujours null? Merci.

Pourquoi êtes-vous à l'aide d'un produit spécifique nom? Je parie qu'un simple @EJB private IPluginDataDAO pluginDataDAO; fonctionne.
Non, il n'a pas. C'est la première option que j'ai testé.

OriginalL'auteur Leos Literak | 2013-08-19