Skip to content
This repository has been archived by the owner on Oct 6, 2020. It is now read-only.

MavenProjectLayout

snommensen edited this page May 27, 2011 · 6 revisions

Design Note: Maven Project Layout

The WiseUI Maven module ("wiseui") has six sub-modules:

client

This is the heart of the GWT application. The client module is the web application itself. It contains the HTML, web.xml and all the client code that is later complied into Javascript and HTML. In summary, it contains all files that are necessary for everything that will be displayed in the browser. Client code can be written in Java 1.5 and is restricted to some of the core Java APIs as only a limited set of those APIs can be yet transformed to Javascript by the GWT compiler (see [http://code.google.com/webtoolkit/doc/latest/DevGuideCodingBasicsCompatibility.html GWT Coding Basics Compatibility]).

api

The api module contains the interfaces that form the contract between the client and the server module.

server

The server module contains all server code, i.e. the classes that implement the interfaces from the api module. Server code can be written in Java 1.6 and make use of 3rd party frameworks.

shared

The shared module contains all classes and resources that are shared between the client and the server.

widgets

The widgets module contains all custom widgets that can be used for the WiseUI user interface.

persistence

The persistence module contains all persistence-relevant classes and configurations. The persistence module is designed to be JPA-compliant.