Google Web Toolkit (GWT)

Info

Version

Documentation and Tutorials

Build Environments

Libraries

Name

Description

GwtQuery

is a jQuery-like API written in GWT, which allows GWT to be used in progressive enhancement scenarios where perhaps GWT widgets are too heavyweight.]

GXT

GXT is a java implementation of the EXT JS library.  It has many rich widgets. 

gwt-dnd

Library providing easy to use drag-and-drop capabilities to GWT]

MyGWT/Ext GWT

Rich Internet Application Framework for GWT]

gwt-ext

is a powerful widget library that provides rich widgets like Grid with sort, ...]

gwt-sl

The GWT Server Library is a collection of Java server side components for the GWT ...]

gwittir

Provides a set of code generators, scaffolding, utilities, and a basic MVC framework]

hibernate4gwt

Permits you to use your Hibernate POJO in the GWT client side code]

google-web-toolkit-incubator

A place to share, discuss, and vet speculative GWT features]

gwtx

An extended GWT JRE Emulation Library that picks up where GWT's basic set left off]

The Rocket GWT library/framework

consists of a number of components that can assist developers get more out of GWT. e.g. Comet support, ...]

Tooling

Benefits of using GWT

  • I18N support
  • Strongly typed language benefits: No JavaScript syntax errors
  • Tooling support: eclipse, etc.
  • Debugging support
  • Unit Testable
  • Compiled to specific targets: no browser specific code
  • Cross browser support
  • Users are familiar seeing/using GWT widgets: Google application suite and many other Web 2.0 apps
  • Able to use 3rd party libraries via JSNI (JavaScript Native Interface)
  • Rapid development using GWT tools such GWTShell etc.
  • 3rd party tools for producing WYSIWYG UI
  • MVC implementation that is very similar to programming in AWT/SWING
    • "When working with GWT as a developer, it's best to think of it as an analogue to the Java Abstract Windowing Toolkit (AWT). It's the basis for your application framework, not the framework itself."
  • GWT4Gadgets: Support for iGoogle Gadgets / OpenSocial Apps / Google Mapplets
  • Offline applications using Google-Gears
  • Full access to the GData APIs
  • Supports GWT-RPC, REST, WS, etc. communication to back-end, and or Data-APIs
    • Can send complex Java types to and from the server. Data gets serialized across network
  • Accessibility support: ARIA support on FireFox 3+, or FireFox2 with FireVox
  • Works with Java-Applets and or Flash
  • Optimizes out redundant metadata from JSON communication to reduce bandwidth cost of client-server communication

Building from source

Creating Hello World GWT Application with Eclipse support : 2008-05-17

  • Create project folder and generate eclipse project file
    • mkdir ~/src/MyProject
    • cd ~/src/MyProject
    • projectCreator -eclipse MyProject
  • Create default application
    • cd ~/src/MyProject
    • applicationCreator -eclipse MyProject edu.ucdavis.gwt.client.MyApplication

Run Hello World GWT Application : 2008-05-17

  • Run OOTB created sample application
    • cd ~/src/MyProject
    • ./MyApplication-shell

(warning) NOTES:

  • ...