All major players in the software industries seem to be interested in the next-generation client/server application. Microsoft used to bet on .NET and wanted everything, from server side to client to be on .NET, except that the most important OS's of the interNET does not have support for .NET; it then focused on the XAML, hoping the new language to break the think wall between traditional client program and web client, when most of the smaller and smarter players have created a lot of wonderful application on the outdated HTML+Javascript technology, based on the XMLHTTPRequest, ironically, introduced by Microsoft. Now Microsoft seems to wake up from its dream of a the next generation. It announced its Ajax tool months ago. Well, that's based on .NET. So it is not fully awaken.
The Web application development tools are really a mess. Different server-side solutions have their own way to simplify ajaxization. Ruby on rail can only be used with Ruby, so PHP people create their own full-stack framework, which is useless for Python fans, who create many yet-another's. We do see people working on JavaScript dedicatedly and generate some interesting work like MochiKit and prototype. But all these tools want you to code JavaScript manually, although the libraries they provide make the programming much easier. After all, the debugging work is still done in this insanely unfriendly language.
Google's GWT really surprised me and made me say "wow". It's really innovative, when Microsoft people are somewhat copying ideas of the JSP tag library. Google's GWT allows your write code in Java and get it debugged on the developer-friendly platform; it treats web browser as a computing platform, and compile your code to that platform. Really neat. We have seen guys implementing a UNIX shell in JavaScript and have never thought about making a subset of Java VM on JavaScript.
The name is interesting, too. The early version of Java comes with AWT, or abstract windowing toolkit; later, the eclipse people builds something called SWT, which is much more powerful and beautiful than AWT. Now Google built this web-based windowing-toolkit-like thing, and the name follows the same trend, although the W is now Web.
Flaws? The GWT approach is very developer-oriented, while the other template-based approach better support the collaboration between developers and designers. With GWT, both the html and the javascript will come from the developer, and the designer have to work from that machine generated HTML code. Must be a bad day for designers. However, when it comes to most enterprise client/server applications, nice-looking is not even a concern. Think about those old-styled VB program with those huge buttons sitting on a grey window frame. GWT's output is much much better than that.