Comparison with GWT
Echo is already an extremely interesting framework and the adoption of AJAX within Echo2 only improves its viability. However, in doing so it brings an obvious comparison with the AJAX based Google Web Toolkit (or GWT). In this section, we provide a comparison of the two approaches.
Java to AJAX frameworks
Both Echo2 and the GWT are frameworks that allow a developer to create a client within a purely Java world and then to deploy them to web clients supported by AJAX technologies.
Client-side or server-side
In contrast, Echo2 dynamically generates the client side elements on demand with all user interaction involving client-to-server communication. Both approaches work, but Echo results in more client-to-server communications, while GWT involves generating a completely new client - that will need testing just as much as the development version may have required testing.
In addition, with Echo2, none of the GUI logic resides in the client and only the current state of the GUI is sent to the client; while with GWT all the client GUI elements reside on the client. Note, in neither case does this limit the backend Java resources (or other resources) that the GUI accesses.
Open source or not
Echo2 is fully Open Source, and is distributed under the terms of the Mozilla Public License (or, if preferred, the GNU LGPL License). Thus, the code is freely available and you can modify, extend it, and work with it as required. In addition, a commercial company and a group of dedicated developers worldwide support it.
Echo is easily extendable and once a new Echo2 component has been created, it can be used by everyone, without any need for others to learn the internals of Echo2. In contrast, developing new GWT widgets isn't as straightforward.
From my point of view, both Echo2 and GWT show the way forward in developing sophisticated web GUI applications using Java. At present, they have taken somewhat different approaches to the same problem, but which is better is rather a matter of opinion.
Personally, I would tend to consider using Echo2 if the application was based on an intranet (where its inherent client-server communication overhead won't matter much); but would probably consider GWT for an internet-based application (due to its greater support for a rich-client delivery platform). ®