Gwittir for GWT

by Robert Cooper

At my "day job" at Manheim Auctions we have been using GWT for a while now on "real world" projects. Along the way we have built a lot of tooling for GWT and we are now releasing a big chunk of it as Gwittir (like Glitter with a lisp). There are a number of tools included here, but the real core of it is made up of "lite" version of things you are accustomed to the the larger Java world. Here we will take a look at Beans Binding, and Animation to create a Flickr browser (running example at the link).

I kind of joke that this project is a roll up of a lot of the open source work I have done for the last couple years as it uses ROME and the MediaRSS module and is built with gwt-maven which I have talked about in this space before. You can grab the source for the example here. A long look at the code after the jump.

4 Comments

Branden
2007-12-17 15:35:21
Great article - thanks for the code postings, those are always helpful. I wonder though - is it worth it to roll the bean binding yourself, or would it be better long-term to bundle Spring in?
cooper
2007-12-17 15:39:09
Well, you can't really bundle Spring into your GWT applications. GWT isn't a large enough subset of Java to support Spring in the client.


Right now we are planning to support a declarative binding system when the declarative UI stuff for GWT 1.5 ships, which will simplify the code more, and be more "Spring-y". Honestly, it is entirely possible GWT will gain some kind of data binding on its own, too. I know there is discussion of it on the mailing lists. For right now, though, this was our best option for what we needed to get done.

Oblin
2007-12-23 17:18:11
Great article. Really interesting stuff.
Data binding is really a missing feature in GWT. This will help a lot.



Im still missing some clues to get a proper GWT MVC application in place.


How does DataBinding fit in the model ?
Can it help building coarse grain components (Composite) ?


Do we need a complementary MVC framework, or did you manage to organize large scale application with just Javabeans properties and Listener ?


As for Spring and IOC, do you think GWTx could be used for a basic declarative IOC mechanism ?


Thx

cooper
2007-12-26 09:58:38
Well, Gwittir includes our MVC framework as well. It is built on top of JavaBeans stuff, but there is a good bit more there.



In terms of RPC, the way we work is we return RPC object that are Bindable then we bind those to our UI components. You can build large composite bindings as well (you can see the Wiki for more info on that). We are hoping to have a declarative binding format that works with the GWT declarative UI soon.


I will post some more stuff on the Gwittir libraries when I get a chance.