JBoss.orgCommunity Documentation

Chapter 4. Errai Kitchen Sink Maven Archetype

The Errai Kitchen Sink archetype generates a project that uses everything but the kitchen sink: annotation-driven CDI and Java Bean Validation on both the client and server, plus JPA and JAX-RS on the server side. It also demonstrates usage of Errai RPC and GWT UiBinder.

Note: Unlike the other Errai Archetypes, this Kitchen Sink archetype creates a project that only works with JBoss AS 7.1 or newer. Although this project could be made to work on other servers, the POM would be quite unwieldy if it included profiles for Tomcat and Jetty.

Here's how to create a project layout using a maven build structure, which will provide us with a bare bones project, including all dependencies, which you can import into your IDE of choice. You will need to have Maven 3 installed in order to execute this command successfully:

mvn archetype:generate \
-DarchetypeGroupId=org.jboss.errai.archetypes \
-DarchetypeArtifactId=jboss-errai-kitchensink-archetype \
-DarchetypeVersion=2.3.2.Final \
-DarchetypeRepository=https://repository.jboss.org/nexus/content/groups/public/

Customize the build properties according to your needs.

Define value for property 'groupId': : foo.bar
Define value for property 'artifactId': : my-kitchen-sink
Define value for property 'version': 1.0-SNAPSHOT:
Define value for property 'package': foo.bar: com.foo.bar
Confirm properties configuration:
groupId: foo.bar
artifactId: my-kitchen-sink
version: 1.0-SNAPSHOT
package: com.foo.bar
Y:

The project will be created in a directory that corresponds to the provided artifactId.

In a few simple steps, you have created a build environment that can build, test, package, and launch a simple application. You can now launch GWT development mode, run integration tests with coverage reporting, and package your web application for deployment.

To get your app running in JBoss AS 7 or EAP 6, ensure there is a local instance of JBoss AS 7.1 or newer (or EAP 6.x) running locally, then type:

mvn package
mvn jboss-as:deploy

You can then try out the app by pointing your web browser at http://localhost:8080/artifactId/ (where artifactId is the artifactId you gave when generating the project.)

To launch the app in GWT development mode, keep JBoss AS running, change into the project directory (name corresponding to the provided artifactId) and type:

mvn gwt:run (launch hosted mode)
mvn gwt:debug (launch hosted with debug settings)

Please remember that in this project, Dev Mode's built-in Jetty server is disabled. Your app must be up and running on JBoss AS 7 as outlined in the previous step.

Importing the project into eclipse

The setup instructions for Eclipse can be found here .