GWT und tomcat: .war erzeugen mit eclispe um .war auf tomcat zu deployen
Wie man mit eclipse kompfortabel ein .war aus einem GWT-Projekt erzeugt, um es auf einem tomcat-Server zu deployen.
Im Grunde genommen sind es nur zwei einfache Schritte, um aus dem GWT-Projekt ein .war zu erzeugen:
Kurzversion:
Als erstes wird ein .jar aus dem “src”-Verzeichnis des Projektes generiert, welches in das “lib”-Verzeichnis des “war”-Verzeichnisses des GWT-Projektes gelegt werden muß. Der zweite Schritt ist dann das eigentliche generieren der .war-Datei, welche dann auf den tomcat-server deployed werden kann. Um den zweiten Schritt etwas kompfortabler zu gestalten habe ich hierfür ein Ant-Script geschrieben, welches das eigentliche .war erzeugt.
Detailierte Version – Schritt 1:
| 1) Rechts-Klick auf das src Verzeichnis innerhalb des Projektes. | |
| 2) Das nebenstehende PopUp erscheint.
Aus diesem Menü “Export …” wählen. |
|
| 3) Nun “JAR file” als Export-Format wählen | |
| 4) Es darf nur das “src”-Verzeichnis des Projektes ausgewählt sein.
Als Ziel für den Export muß folgender Pfad angegeben werden: <Verzeichnis des Projektes>/war/WEB-INF/lib/<projectname>.jar – dann auf “Finish” klicken. |
Nun ist das GWT-Projekt soweit vorbereitet, daß es in ein .war gepackt werden kann um auf einem tomcat-Server deployed zu werden.
Detailierte Version – Schritt 2:
1) Es wird ein neues ANT-Script innerhalb des Projektes erstellt (Rechts-Klick auf das Projektverzeichnis, dann “New” und vom Untermenü “File” auswählen. Die neue Datei sollte z.B. “warbuilder.xml” heissen).
2) Folgender Inhalt muß in diese Datei kopiert werden. Dabei <projectname> durch den Namen des Projektes ersetzen:
<project name="<projectname>" basedir="." default="default"> <target name="default" depends="buildwar,deploy"></target> <target name="buildwar"> <war basedir="war" destfile=" <projectname>.war" webxml="war/WEB-INF/web.xml"> <exclude name="WEB-INF/**" /> <webinf dir="war/WEB-INF/"> <include name="**/*.jar" /> </webinf> </war> </target> <target name="deploy"> <copy file=" <projectname>.war" todir="." /> </target> </project>
3) Die ersten beiden Schritte müssen für jedes Projekt nur einmal ausgeführt werden. Danach kann der warbuilder.xml immer wieder benutzt werden. Um das .war nun zu erzeugen klickt man einfach mit der rechten Maustaste auf den warbuilder.xml und wählt vom PopUp-Menü den Punkt “Run as” und vom Submenü “Ant Build” aus.
Die .war-Datei wird dann durch das ANT-Script erzeugt. You will find the .war-file in your ProjectFolder.





Diese Exception kann auftreten, wenn man versucht ein externes .jar mit GWT für die Serverseite zu verwenden. Die Fehlermeldung sagt aus, daß der eingebundene Pfad zu dem .jar (in diesem Fall org.jibble.pircbot.PircBot) nicht gefunden werden kann. Dies passiert normalerweise nur dann, wenn der Pfad zu dem .jar im JAVA Build Path nicht gesetzt wurde. Wenn man mit GWT arbeitet, ist das aber leider nicht alles was getan werden muß:
Maustaste auf das Projekt klickt und aus dem PopUp-Menu “Eigenschaften” oder “Properties” wählt. In dem erscheinenden Fenster wählt man dann “Java Build Path” und ergänzt hier dann die externen .jars.