Blog

Verwendung von Google Web Toolkit mit Eclipse WTP

Marco Mulder

Aktualisiert Oktober 23, 2025
2 Minuten
Ich schreibe gerade eine GWT-Anwendung und möchte diese Anwendung sowohl in der GWT-Shell als auch in Tomcat testen. Die Anwendung verwendet verschiedene Eclipse-Projekte für die GWT-Benutzeroberfläche und für die Business-Service-Schicht. Ich habe herausgefunden, dass dies leicht möglich ist, wenn Sie ein dynamisches Webprojekt von Eclipse WTP anstelle des Standard-Java-Projekts verwenden, das vom GWT projectCreator erstellt wird. Die Verwendung eines dynamischen Webprojekts hat folgende Vorteile:
  • Es ist möglich, externe Jars und andere Eclipse-Projekte von Diensten zu verwenden, die mit dem RemoteServiceServlet implementiert sind.
  • Es ist einfach, die 'kompilierte' JavaScript-Version im Tomcat zu testen, ohne eine War-Datei erstellen und bereitstellen zu müssen.
  • Es ist einfach, eine War-Datei zu exportieren, die auf jedem Anwendungsserver eingesetzt werden kann.
Es gibt ein Eclipse-Plugin für die Verwendung von GWT mit WTP: Googlipse . Dieses Plugin unterstützt jedoch (noch) nicht das Starten der 'kompilierten' JavaScript-Anwendung. Ich werde die Schritte erläutern, mit denen Sie die JavaScript-Version einer GWT-Anwendung in WTP starten können. So erstellen Sie eine GWT-Anwendung in einem dynamischen Webprojekt Das Rezept zum Erstellen einer GWT-Anwendung in einem dynamischen Webprojekt lautet wie folgt:
  • Erstellen Sie ein dynamisches Webprojekt MyProject in Eclipse WTP
  • Verwenden Sie GWT projectCreator, ohne die Dateien .project und .classpath zu überschreiben:projectCreator.cmd -ignore -eclipse MyProject
  • Verwenden Sie GWT applicationCreator, um eine GWT-Anwendung zu erstellen:applicationCreator.cmd -eclipse MyProject com.mycompany.client.MyApplication
  • Fügen Sie gwt-user.jar und junit.jar zur Datei .classpath hinzu: <classpathentry kind="lib" path="C:/gwt-windows-1.1.0/gwt-user.jar"/> <classpathentry kind="var" path="JUNIT_HOME/junit.jar"/>
  • Suchen und ersetzen Sie "www" durch "WebContent" in MyApplication.launch, MyApplication-compile.cmd und MyApplication-shell.cmd
  • Kopieren Sie gwt-servlet.jar nach WebContent/WEB-INF/lib
Testen der Anwendung Sie können die generierte Startkonfiguration verwenden, um die Anwendung über die GWT-Shell zu testen. Das WTP-Tooling stellt sicher, dass sich die vom Webprojekt verwendeten Bibliotheken im Klassenpfad befinden. So testen Sie die 'kompilierte' JavaScript-Anwendung:
  • Kompilieren Sie den Java-Quellcode in JavaScript mit MyApplication-compile.cmd
  • Wählen Sie "Ausführen als --> Auf Server ausführen" aus dem Kontextmenü von MyProject
  • Öffnen Sie einen Browser auf die URL der Anwendung: https://xebia.com/blog:8080/MyProject/com.mycompany.MyApplication/MyApplication.html
Implementieren und Aufrufen eines Dienstes Um einen Dienst so aufzurufen, dass er sowohl in der GWT-Shell als auch in der 'kompilierten' JavaScript-Anwendung funktioniert, müssen Sie GWT.getModuleBaseURL() verwenden, wenn Sie den Endpunkt festlegen. Wenn Sie zum Beispiel einen Dienst "myservice" im Paket com.mycompany.server.MyServiceImpl:
  • Verwenden Sie GWT.getModuleBaseURL() im serviceEntryPoint:endpoint.setServiceEntryPoint(GWT.getModuleBaseURL() + "myservice");
  • Geben Sie den vollständigen Pfad in MyApplication.gwt.xml an: <servlet path=">/com.mycompany.MyApplication/myservice" class="com.mycompany.server.MyServiceImpl"/>
  • Geben Sie den Pfad auch in WebContent/WEB-INF/web.xml an:
[xml] MyService com.mycompany.server.MyServiceImpl MyService /com.mycompany.MyApplication/myservice [/xml]

Verfasst von

Marco Mulder

Contact

Let’s discuss how we can support your journey.