Konvertieren KRIEG zu OHR und andere Geschichten Glassfish
Ich bin wirklich neu in diesem, so dass ich hoffentlich nicht machen, die schrecklichen Fehler. Ich entschuldige mich vor der hand, wenn ich muss.
In meinem Projekt wurde ich mit tomcat und Implementierung von war-Dateien. Aber nun einige Bosse will zum bereitstellen von EAR-Dateien. So da sind wir.
Ich zunächst heruntergeladen Glassfish (weiß nicht, ob es die apropiate application server für einen Neuling wie mich), instaliert es und alle (ich auch implementiert das Hallo.Krieg in der autodeploy >_< ). Dann bereitete eine EAR-Datei.
Was weiß ich, ich muss einfach erstellen Sie ein Enterprise Application-Projekt in Eclipse und fügen Sie das Modul meine war-Datei. Dadurch ändert sich der application.xml Datei automatisch (Dank eclipse-Projekt!). Also ich exportiert es zu einer EAR-Datei hochgeladen und es auf den glassfish-server.
Wunder der Wunder, es funktioniert nicht.
Ich habe auch versucht, die Bereitstellung der alte war-Datei in diese neue glänzende glassfish-aber es geht auf http-404 nicht gefunden Fehler. Der glassfish scheint zu sagen, dass mein Projekt nicht in ~/domains/domain1/docroot. Übrigens ich benutze windows und ich bin mir bewusst einige Probleme zwischen glassfish und windows durch ein Update Dateien öffnen oder so.
Also muss ich Fragen:
Zuerst mache ich die OHR-Paket richtig?
Zweitens, brauche ich einige Besondere Konfiguration des glassfish-server zum bereitstellen der EAR-und war-Dateien?
Dank!
- Es ist offensichtlich etwas nicht in Ordnung... aber angesichts der Detailgenauigkeit in dieser Frage habe ich nicht die leiseste Ahnung, was bewegte Teil ist aus dem Gleichgewicht geraten... Oder auch, was die Teile sind. Welche version von Eclipse, GlassFish and GlassFish-adapter für Eclipse benutzt du? Wie haben Sie 'hochladen' (OHR), um den GlassFish-server? Wie haben Sie bereitstellen der war-Datei in GlassFish? gibt es irgendetwas, was interessant in domains\domain1\logs\server.melden
- Es ist eine Sache, die ich gefunden habe, mit dem glassfish-connector in Eclipse, dass, wenn Sie arbeiten, Kriegen Sie arbeitet mit einem explodierten KRIEG, wo nur die geänderten Dateien aktualisieren. Wenn Sie die Arbeit mit den Ohren, es redeployes eine neu gepackte war-Datei, wenn diese aktualisiert. Der Unterschied ist atemberaubend.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Ihre app nicht haben, EJBs, ich sehe keinen Wert bei der Bereitstellung von es als ein OHR.
Die domain und die URL sollte die Einbeziehung der Namen Ihrer Domäne ein, irgendwie. Ich bin eine WebLogic/JBOSS user. Gibt es eine Möglichkeit zum erstellen einer Domäne in Glassfish? Wenn ja, tun Sie es und legen Sie Ihr OHR in es. Vielleicht diese helfen.
Wäre es interessant, um die Beweggründe hinter dieser Entscheidung. Der Allgemeine trend ist, Dinge einfacher machen, nicht komplizierter (z.B. in Java EE 6 ist es auch möglich, EJBs direkt direkt in einen KRIEG).
Ich wie GlassFish v3 sehr viel, es bietet eine sehr produktive Umgebung für die Entwicklung. Und ich finde es nicht kompliziert für einfache Bedürfnisse, die admin-Konsole machen Sie es freundlich, wenn man es nicht gewöhnt ist.
Überprüfen Sie die server-logs.
Welche URL hast du versucht zuzugreifen? Wie sehen Sie die Anwendung in der admin-Konsole.
Keine Ahnung, ich glaube nicht verlassen sich auf IDEs für diese. Zeigen Sie Ihre Ohr-Struktur (Verwendung
tree
), zeigen Sie Ihreapplication.xml
.Gibt es mehrere Möglichkeiten für die Bereitstellung ein KRIEG, ein OHR (über die Konsole, über die
autodeploy
Verzeichnis, über dasasadmin
Kommandozeilen-tool), und Sie alle arbeiten aus der box.Zuerst einmal herzlichen Dank für Eure Antworten. Ich werde versuchen zu sammeln alle diese Informationen.
Ich denke, die motivation für die änderung in ein EAR-Datei wird im Zusammenhang mit der "unternehmerischen Entscheidung" und vielleicht jemand, der nicht schreiben wollen, der Rahmen, wenn er installiert eine Anwendung in dem server, ich bin zwar niemand in der Firma auf diese Herausforderung. Mein schlechtes.
Sie sind auch noch mit Java EE 1.5.
Ich installierte Glasshfish 2.1 und Glassfish 2.1 Anschluss an meine eclipse Galileo. Ich denke, es gelingt ziemlich leicht, sich zwischen der eclipse-Anschluss der Konsole und in der web-administration. Ich schließlich feststellen, dass irgendwo, wo ich tun kann, jede Handlung. Es ist sehr groß im Vergleich zu Tomcat und ich fühle mich irgendwie verloren, aber ich versuche, es zu nehmen langsam.
In mein OHR Datei gibt es nicht viel, die war-Datei ein, und im META-INF-Verzeichnis gibt es meines application.xml und manifestieren.mf. Meine application.xml liest:
Habe ich Zugriff auf die url über http://localhost:8080/foo dem server.log-zeigt (in Spanisch, ich übersetzt es die beste, die ich verwalten können), durch die Art, wie ich die web-service-Administration glassfish und nicht die win-Konsole.
[#|2010-04-29T09:46:59.722+0200|INFO|sun-appserver2.1|javax.enterprise.system.tools.deployment|_ThreadID=26;_ThreadName=Thread-419;|bereitgestellt mit moduleid = foo|#]
[#|2010-04-29T09:46:59.909+0200|SEVERE|sun-appserver2.1|org.apache.catalina.core.StandardContext|_ThreadID=27;_ThreadName=Thread-418;_RequestID=9bff8714-d870-4f30-8a7a-22dca0375b6b;|PWC1300: Fehler bei der Initialisierung der Ressourcen im Kontext /foo|#]
[#|2010-04-29T09:46:59.909+0200|SEVERE|sun-appserver2.1|org.apache.catalina.core.StandardContext|_ThreadID=27;_ThreadName=Thread-418;_RequestID=9bff8714-d870-4f30-8a7a-22dca0375b6b;|PWC4430: Das Dokument base C:\Sun\SDK\jdk\glassfish\domains\domain1\docroot\FOO ist nicht vorhanden, oder es ist ein Verzeichnis kann nicht gelesen werden|#]
[#|2010-04-29T09:46:59.925+0200|SEVERE|sun-appserver2.1|org.apache.catalina.core.StandardContext|_ThreadID=27;_ThreadName=Thread-418;_RequestID=9bff8714-d870-4f30-8a7a-22dca0375b6b;|PWC1306: Die start-up-Kontext /foo fehlgeschlagen ist, weil die vorherigen Fehler|#]
[#|2010-04-29T09:46:59.925+0200|INFO|sun-appserver2.1|org.apache.catalina.core.StandardContext|_ThreadID=27;_ThreadName=Thread-418;|PWC1240: Das Web-Modul[/foo] container wurde noch nicht gestartet|#]
Wie gesagt, ich habe auch versucht, den KRIEG direkt und es auch nicht funktioniert. Verwendete ich das es gut (oder so er sagt) und dann hat es eine ziemlich Schaltfläche (in der Spalte Aktion) starten Sie den web-Dienst, der server gibt mir http://localhost:4848/applications/webApplicationLinks.jsf?appID=FOO&contextRoot=/FOO (das Ohr ist foo, während der Krieg ist FOO), und leitet mich auf eine Seite sagt mir, dass wenn der server oder die listener nicht ausgeführt werden ist es möglich, dass die links nicht funktionieren. Die links unten sind http://localhost:8080/FOO und http://localhost:8181/FOO (weder Arbeit, auch bekannt als http-404, 8080 und leere Seite in 8181). Durch die Art und Weise, diese start-Schaltfläche ist nicht verfügbar, im Ohr, ich mag das nicht.
Als für andere interessante Dinge auf dem server.log-es scheint nicht viel mehr sagen, aber ich könnte falsch sein, da bin ich wirklich sehr neu in der server Welt.