Haven’t you always wanted to create Rich Internet Applications (RIA) in Javascript/AJAX but renounced to do so because you don’t know anything about these technologies ? Or you do know AJAX, but  managing a code that will work for every web browser out there just drive you nuts. Besides, you find writing a non-trivial Javascript application very painful, given that you can’t debug your program, watch variables, find some errors without running the code, and the list continues. You know very well Java , and has been seduced by it since your write your first “Hello World” program ?

Well, Google Web Toolkit might seriously interest you!

What is GWT?

Google Web Toolkit, or GWT for intimate, is a development toolkit powered by Google, for building and optimizing complex browser-based applications. Technically, it is a Java framework, that can be used to develop AJAX applications in Java language. Developers basically write code in Java which can then be compiled into HTML and Javascript. There are some great advantages of developing AJAX apps with GWT (especially if you’re a Java developer).

GWT Features

Here is a list (non-exhaustive ) of some cool features it offers:

  1. Browser independent compiled code. You code in Java and GWT compiles it for you in JavaScript that’s browser independent (runs in most browsers).
  2. Compile time errors. Developers can code with GWT in their favorite Java IDE and you can weed away the compile time errors.
  3. Testing in hosted mode. In hosted mode your application basically runs within a JVM. This helps you debug your application in your favorite IDE.
  4. Web application easy to install: GWT produces a WAR file. Drop it into a servlet container such as Jetty or Tomcat. Done.
  5. Component Library. GWT contains a basic set of UI components called widgets, that can be used (and extended) to lay out well functional UIs.
  6. Server Communication. You can easily communicate with your web server using Java (servlets) or non-java back-end (php, asp pages).

GWT Tools

Powerful tools to help you during all the process of creating your application( write, debug, test, optimize, run).

Google Eclipse Plugin LogoGoogle Plugin for Eclipse provides IDE support for Google Web Toolkit and App Engine web projects. The plugin offers very cool features such as a new web application wizard, development mode View, UiBinder support, recognition of inline JavaScript (JSNI), GWT compiler shortcuts and configuration UI, wizards to create modules, client bundles, entry points and HTML page …

GWT Designer LogoGWT Designer is a powerful and easy to use bi-directional Java GUI designer that makes it very easy to create GWT GUI applications without spending a lot of time writing code to display simple forms. Formerly, GWT Designer was a product of Instantiations and cost about  . But since Google acquired the company, in early August 2010, GWT Designer (and some other products of Instantiations) has been released for free.

SpeedTracer LogoSpeed Tracer is a tool to help you identify and fix performance problems in your web applications. It visualizes metrics that are taken from low level instrumentation points inside of the browser and analyzes them as your application runs. Speed Tracer is available as a Chrome extension and works on all platforms where extensions are currently supported (Windows and Linux).

Other GWT ToolsAnd many more!

So, convince? want to jump in? :) Let’s get it started!

Happy coding folks! :)