Frage

Die gleiche IST-Datei setzt auf Glassfish v2.1 in Ordnung. Ich weiß es nicht das letzte Mal, als ich versuchte, v3, aber ich war zu wollen hot-deploy Funktionalität zu überprüfen, wie es das Gerücht ist in NetBeans 6.8 mit Glasfischen v3 zu arbeiten. Also, ich einsetzen wie gewohnt und ich erhalte den folgenden Fehler:

SEVERE: Exception while invoking class org.glassfish.ejb.startup.EjbDeployer load method
....
SEVERE: Exception while loading the app
java.lang.RuntimeException: Unable to load EJB module.  DeploymentContext does not contain any EJB  Check archive to ensure correct packaging for c:\src\svn\trunk\gui\target\WEBAPP
    at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:134)
    at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:64)
    at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:153)
    at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:220)
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:314)
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:169)
    at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:272)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:305)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:320)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1159)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$900(CommandRunnerImpl.java:83)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1218)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1207)
    at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:362)
    at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:201)
    at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:166)
    at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:100)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:241)
    at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:789)
    at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:697)
    at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:951)
    at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:166)
    at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
    at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
    at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
    at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
    at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
    at com.sun.grizzly.util.FixedThreadPool$BasicWorker.doWork(FixedThreadPool.java:431)
    at com.sun.grizzly.util.FixedThreadPool$BasicWorker.run(FixedThreadPool.java:410)
    at java.lang.Thread.run(Thread.java:619)

Ich verstehe nicht, warum es über alles, was im Zusammenhang EJB beschweren, da dies eine WAR-Datei. Irgendwelche Ideen?

UPDATE: Ich habe einen Fehler mit Glasfischen abgelegt: https://glassfish.dev.java.net/issues/show_bug.cgi?id=10592 . Entweder ist dies ein Bug in Glasfischen oder zumindest der Fehlermeldung ist das Problem bei der Verfolgung nicht hilfreich.

War es hilfreich?

Lösung

https://glassfish.dev.java.net/issues /show_bug.cgi?id=10592

Von dem Bug:

Ok, fand die Ursache (Dank viel für den Testfall bereitstellt!):

  1. EjbSniffer wurde nach dem Scannen des Archiv: ein (oder mehr) der Bibliothek Gläser im Archiv verpackt enthalten EJBs mit Komponente Anmerkungen. So wurden die EJB-Container gefragt später das Modul zu laden.

  2. Die EJB-Container die entsprechenden Metadaten zu finden, weil nicht in der Lage waren, die web.xml ist Version 2.4, so dass die Meta-Datenverarbeitung die Anmerkung übersprungen Verarbeitung (wir nur Prozess Anmerkungen für Java EE 5 + Schema-Versionen).

Nachdem ich die web.xml geändert 2.5 Schema zu referenzieren (Sie können auch 3,0-Schema tun): http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd ">

Die App erfolgreich im Einsatz.

Bitte versuchen Sie es und lassen Sie mich wissen, ob es für Sie arbeitet.

Andere Tipps

Ich habe 3_0-Schema und ich noch die Störung. Was ist interessanter ist ich zwei Kriege haben, ist ein Beispiel das Projekt von Schweiß Urbild, und die andere ist eine Anpassung davon. Der Brauch Krieg nicht funktioniert.

Ich habe die Seite an Seite überprüft, ist es die gleiche, außer für mehr Modellklassen und mehr Eigenschaften in persistence.xml

Jemand der @Stateless Annotationen in ManagedBeans verwendet, wird ein ähnliches Problem auf dem java.net Foren .

Ich weiß nicht, ob dies auf Sie zutrifft, aber die gegebene Problemumgehung war:

  

Gehen Sie auf die Admin-Konsole zu dem Update-Center und EJB installieren.

Ich habe es nicht getestet mich, so kann ich nicht bestätigen dies helfen wird.

Just my $ 0,02 ...

Ich hatte den gleichen Fehler, nachdem ich die JaxMe Bibliothek (Version 0.5.2) zu meiner Anwendung hinzugefügt. Dies führte zu einem Einsatz Ausfall auf einem meiner Kriegs Module - was aus mir die Hölle verwirrt, weil ich keine Änderungen an diesem Modul machen hat. Entfernen JaxMe das Problem behoben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top