Hi, I would like to know the difference between GWT, GWT-RPC, EXT-GWT and Smart GWT. Currently, I managed to borrow books on GWT which I understand is just a library designed to facilitate fast and efficient Ajax (asynchronous JavaScript and XML) development. But what are the rest? Could anyone explain it? Thanks.
GWT is Google Web Toolkit, for a framework for writing Web Interfaces in Java and compiling them to Javascript.
GWT RPC is a communication mechanism that allows client side GWT applications to communicate with a Java Server. It is part of GWT.
Ext GWT and Smart GWT are libraries which give you more components to use in your GWT applications, i.e. to use either of these you'll need a GWT application.
Smart GWT is a LGPL framework that sits on top of the components from the Smart Client library. When I looked at a couple of years ago I decided I didn't like it as it was a very thin wrapper around the JavaScript components of Smart Client, which meant when you were debugging your code you quickly hit "native" JavaScript which the Java debugger can't do anything with.
Ext GWT has a complicated history as there is both Ext GWT and gwt-ext.
gwt-ext is a fork from an old open source version of Ext GWT, but it is no longer maintained and so is not worth looking it. I mention it so if you come across it you'll know what it is.
Ext GWT is still maintained and has both commercial and open source licenses. It's from the same company who make the Ext Js JavaScript library, so it probably has some common code but it is not just a wrapper around Ext Js. This is why I preferred it to Smart GWT as it had a lot more Java code which meant when you had a problem you could have the debugger look at the Ext GWT code so you could work out what was really happening.