I need to thank Google for this. I watched a fascinating presentation by Arno Puder a Google TechTalk. XML11, like Google Web Toolkit, is a methodology for building AJAX applications in Java. But the similarity stops there. While Google compiles Java sources into JavaScript, XML11 does it from Java bytecode. Not having the resources of a company like Google, this team does some very innovative work and use existing tools. But I like their philosophy. All you need to do is to take you Java AWT desktop compiled application and use XML11 to produce an AJAX app.
The video is worth watching since Arno goes through a step by step process of what they do, how they do it and why they made the decision to do it. Here are the highlights.
There are several reasons, I like this approach, assuming that it works.
Arno sums up the presentation with a list of differences between the GWT approach and XML11 approach.
Philosophy - GWT uses the Web App development model, XML11 uses the Desktop development model to build Web Apps
Cross Compiler - GWT cross compiles from Java sources while XML11 is a Java bytecode cross compiler
Widget Toolkit - GWT uses proprietary Google Widgets whereas XML11 uses the familiar AWT widgets
Debugging - GWT requires special hooks into the browser for debugging while XML11 lets you use Java native debugger
The major difference, which may ultimately decide the fate/popularity of the toolkit is how well it works and what kind of support the team can provide. It is an open source project. You can get more information at xml11 site.
This is a unique application of XML. XML is used to describe a stack machine. When one of the members of the audience asked Arno, why they chose XML instead of using some other format, he had a pretty cool answer. They can do a similar translation from a .NET app (using the .NET IL which is conceptually similar to java bytecode) to the intermediate XML format as well. Then, the rest of the tools (converting XML to JS) can be reused.

Recommend