What is GWT?The Google Web Toolkit (GWT) is an AJAX development tool from Google, targeted for Java Developers. Web applications (both GUIs and RPCs) are written in Java using the GWT API.
GWT emphasizes reusable, efficient solutions to recurring Ajax challenges, namely asynchronous remote procedure calls, history management, bookmarking, and cross-browser portability.
And what is "gwt-toolbox"?"gwt-toolbox" is a bunch of tools that allow developers to build flexible GWT applications.
The project is divided into several modules:
This is the core module of the project. It contains a MVC framework you can use in order to build more flexible applications.
This framework is highly based on the "observer" design pattern that notifies the UI when the model is changed.
In this module, you can find all needed classes to build your distributed applications.
For the moment, only the RPC protocol is supported for the service layer.
This module contains several helper classes used by the framework.
Deeper in "gwt-toolbox"...1. Fundamentals
An application based on "gwt-toolbox" should be divided into several parts:
Models Views Controllers Services Each of these above elements has a unique name allowing it to be registered in a specific registry.
The main entry point of a "gwt-toolbox" application is the AbstractEntryPoint class. When the application starts up, the AbstractEntryPoint instance calls the main controller of the application: The ApplicationController. This last is in charge of registering, in their own registry, all models, views, controllers and services needed by the application. After that, the main controller displays the main view of the application.
Due to the fact that a view can observe one or more models (these associations are made by the application controller), when a model is modified, the observing views are notified and can react in consequence.
2. Class diagram
The following samples are embedded in the "gwt-toolbox" distribution. To build these samples (war, ...), Maven2 should be installed and configured on your computer.
After these fancy stuff, you simply have to execute the following command in your favorite shell: mvn clean install.
3.1. Sample 1 - Asynchronous "Hello World!!!"
The famous example built with "gwt-toolbox" and in its asynchronous version.
The demo is available at this address
3.4. A full application to manage your contacts: "gwt-contact"
Repository Maven2Used to develop maven2 applications with "gwt-toolbox".
In order to use our repository, you have to add the following lines in your pom.xml file:
Finally, add the correct dependency to "gwt-toolbox" in your pom.xml file. For example: