Run a Google Web Toolkit 2 project on Apache Karaf/ServiceMix

To simplify the development of Web projects on Apache Karaf/Apache ServiceMix, we have created archetypes to setup WAR or WAB projects. They are very basic but they can be enriched with framework like Struts 2, Wicket, plain JSP or MyFaces JSF as they are currently supported on Apache Karaf - ServiceMix.

For the GWT users, it exists now an archetype which will create a GWT 2.4 project. To create such a project, you must generate a project from the archetype

mvn archetype:generate \
   -DarchetypeGroupId=org.ops4j.pax.web.archetypes\
   -DarchetypeArtifactId=wab-gwt-archetype \
   -DarchetypeVersion=2.1.2 \
   -DgroupId=com.mycompany \
   -DartifactId=hello \
   -Dversion=1.0
    <a href="https://cmoulliard.github.io/assets/images//archetype-creation.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="279" src="https://cmoulliard.github.io/assets/images//archetype-creation.png" width="320"/></a>

build next the WAB using hello/mvn clean install and deploy it on Apache Karaf

Fig. 1 : GWT deployed on Apache Karaf

Verify that the web site is well registered :

Fig. 2 : Web site deployed on Apache Karaf

Next, you can navigate to your application in your browser and click on the button to say Hello.

Fig. 3 : Hello Message of GWT in the browser

Remark : A WAB project is nothing more than a WAR excepted it is packaged as a bundle file, that we have removed the WEB-INF/lib dependencies and create a MANIFEST file containing the OSGI metadata of the packages to be imported.