views:

598

answers:

1

I have been using UIBinder on SmartGWT widgets rather successfully. However, I have to extend each SmartGWT widget that I use to comply with UIBinder's requirement. Occasionally, I have to masquerade a SmartGWT widget into com.google.gwt namespace, or masquerade a non-GWT-widget as a GWT widget. I extend widgets on as-needed basis.

So, I am starting to wonder, may be SmartGWT already has a UI XML format and I might be doing all this UIBinder acclimatization just to reinvent SmartGWT's wheel.

I have read and reread source codes of the showcase and delved into some of the SmartGWT source code, as well as reading the javadocs.

All I found is XML or Json for communication between server and client.

Is there any UI def XML available for SmartGWT whether gwt-compiled to client-side javascript or like Vaadin's server-side generated UIDL?

And if you happen to be an Isomorphic agent, could you tell us if there are any plans to let SmartGWT play with UIBinder (to preclude me from having to massage SmartGWT widgets on my own anymore)?

+1  A: 

Yes, there is a SmartGWT XML component definition - the one used by Visual Builder, and which you can also write directly. See this FAQ item:

http://forums.smartclient.com/showthread.php?t=8159#loadVBScreen

As the FAQ clarifies, we recommend using this XML format for a set of use cases that heavily overlaps with what UIBinder is for, that is, keeping your layout and basic component definitions in a declarative format that designers can edit and which can be edited by visual tools, and having your actual Java event handling and other programmatic code separate.

However we strongly recommend against having that declarative format be HTML (as UIBinder does it) because that introduces lots and lots of cross-browser layout issues.

We are likely to eventually support UIBinder as well for the few use cases where it is not redundant with our own XML format. If you need that to happen sooner, consider Feature Sponsorship:

http://www.smartclient.com/services/index.jsp#features

Charles Kendrick