kann nicht finden, meine Bohne mit dem InitialContext.lookup () - Methode
Habe ich versucht, struts 1.3-API, um eine kleine Anwendung mit EJB 3.0. Leider kann ich nicht die @EJB-annotation to call my bean-Objekt von innen meine Aktion Klasse. Ich habe dieses problem mit verschiedenen workarounds ( die erste ist die Verwendung von meinem globalen jndi-Namen der bean und der andere ist der Aufruf einer anderen Klasse zuerst und verwenden Sie die @EJB-annotation, die von dieser Klasse). Immer noch diese beiden workarounds haben erhebliche Nachteile. Ich möchte meine EJB-direkt aus meinem action-Klasse. Ich habe gelesen, viele Beispiele, die über das "java:comp/env/beanName" JNDI-name aber noch nicht herausfinden, wie es zu tun und bekommen Namen nicht gefunden axception.
Lassen Sie uns den vollständigen Namen des lokalen EJB-Klasse die com.ejb.myEjbPackage.MyEJBLocal, wie kann ich rufen Sie über das Kontext-lookup? (kann ich es tun, ohne ändern der web.xml und sun-web.xml Deskriptoren?)
Ich verwende den glassfish-server und Netbeans IDE.
Danke im Voraus
InformationsquelleAutor Pitelk | 2010-11-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
@EJB-funktioniert nicht in einem standard-pojo-es kann nur getan werden in einem verwalteten Objekt (d.h. ein anderes session bean)
So...
Hier ist deine Bohne
Hier ist deine lookup -
Können Sie einige weitere Informationen über die mappedName, um zu sehen, wenn Sie es verwenden möchten oder nicht.
InformationsquelleAutor Preston
Fand ich die Antwort :
Wenn Sie nicht verwenden können, die EJB-annotation in der Klasse, die Sie anrufen möchten die Bohne dann :
Wenn Sie nicht zu verwirren wollen mit XML-Deskriptoren zu definieren Bohne , man muss es in der bean-Klasse selbst.
Also ich habe folgende Anmerkung in der GameBean Klasse
Den beanName ist optional. Die annotation deklariert werden muss in der Zeile VOR der Deklaration der Klasse.
Dann, um die Bohnen aus der anderen Klasse, die Sie tun können,
InformationsquelleAutor Pitelk