After working hard on a GIS project with SmartGWT for nearly half a year, I think I should write a review for smartGWT.
"I think SmartGWT has a ton of great widgets, but but but there is a HUGE price. Create a simple SmartGWT based project and watch how many files get loaded by your page. That, I think, is totally against the ideals of something like GWT. While SmartGWT may be a pretty good option for people on a deadline, if you want raw performance, stay away from it. The number of HTTP requests will simply kill your application."
I have to agree with that. The nice widgets smartgwt provides come with a huge price, the unzipped size of the js files are about 3m, and the rendering speed is just OK. sometime we should try out best to improve the compatibility and can't decide what client should do, namely a slow network or a crappy IE6, that is just normal.
While GWT is so promising about flexibility and compatibility , smartgwt as a wrapper can quickly help us to create some deadline project, but it limits our capability to implement our own widgets and communication framework. The performance won't be the best and the application won't be compatible with mobile devices. which I think are very important nowadays.
In terms of the data binding feature in smartGWT pro version, I am not interested at all. Binding page to domain model with XML, It's never a good idea based on my experience. Firstly you have to learn how to use the XML syntax to do the job, secondly application is not always about database and requirements can be various, not to mention the table relationship can be very complicated. So the project using data binding idea always ends up with a lot of tweaking code and workarounds.