Google Web Toolkit

I was about to call it a night when I saw a post on Google Blog mentioning Google Web Toolkit:
With GWT, you can develop and debug your own AJAX applications in Java code using the Java development tools of your choice. When you deploy your application to production, the GWT compiler simply translates your Java application to browser-compliant JavaScript and HTML.
Since I’m currently working (together with Lee and Ben) on another AJAX demo, this time for the Health Care and Life Sciences IG meeting in Edinburgh (WWW2006), I figured it would be worth giving it a try. I downloaded it and started snooping around and found very interesting stuff, like a cute shell environment to launch your apps locally (that uses tomcat as a web server on port 8888). It seems that these Google developers are very fond of Eclipse and SWT since they ship the swt.dll from Eclipse for their Windows integration (like hosting IE). Unfortunately, I had just installed IE7 and GWT wouldn’t run because of invalid entry points in the new IE dlls. At least I’ll give props to the IE team for having a flawless uninstall process (that was the first chance I had given IE in a couple of years, sorry IE team). GWT comes with an pretty straight-forward Eclipse project generator that will get you running inside Eclipse in no time. The environment is (to sound like a teenager) sick. I was quickly debugging events from the browser directly within Eclipse (nice!), it took me back to my Sash days. They provide you with almost everything (including a kitchen sink) you need to implement your AJAX apps and even your own RPC services with proxies/stubs/skeletons (whatever you want to call them). What about existing REST services that output JSON already? Don’t worry, they have that too. Now, once you run the app you in the hosted environment you can snoop around the file system and find the generated Javascript (JSNI) to see that old familiar obfuscated Javascript we have come to love and many reverse engineer from Gmail, Calendar, Suggest, etc. However, the most intriguing part of the toolkit for me is the ability to extend the javascript generator which will allow us to inject custom Javascript into our app, more on this later. Overall, I’m very impressed. I think this may actually be called an AJAX toolkit and not what Yahoo tricked us into believing was an AJAX toolkit. As a matter of fact, I think tomorrow I will give my colleagues the bad news that I’m starting the Health Care/Life Sciences demo from scratch (just a few days from the conference) to do rewrite it using GWT. Let’s see what they say.

About this entry