Monday, June 27, 2011

I am using SmartGWT on two projects

My currently largest customer uses the commercial version of Isomorphic's Smart GWT and I have spent a few evenings working on one of my own projects (that I will probably open source when it is done) that uses the free LGPL version. 7/9/2011 edit: I ended up re-writing this in straight-up GWT. I should also mention that I have signed a consulting agreement with Isomorphic (svn commit rights :-) but I have not had time in my schedule to do any work for them yet.

SmartGWT uses Google's Java to Javascript compiler but instead of using the standard GWT UI components it uses Isomorphic's SmartClient Javascript library (suitably wrapped for extending GWT). The commercial version's sweet spot is reasonably easy integration with server side data sources like relational databases, JSON web services, etc. The free LGPL version provides an example of a client side data source that you can hook up with custom code to web services that you write yourself. For my for-fun side project my back end server processes requests and returns JSON data: fairly easy but not as nice as using Isomorphic's proprietary data sources.

The developer experience is similar to using Google's GWT. You program the UI in Java and it gets compiled to Javascript. If you are only modifying client sode code, then run in the debug/developer mode and your changes to Java UI code get recompiled and loaded into your web browser when you do a refresh.

No comments: