Why not use gwt to give same scope.

We spent some time writing a complete UI layer on top of ofbiz in gwt to make ofbiz oriented towards a niche market. We changed approach as it was too much work to redo entire UI layer and we felt not the right approach. However we are still working to do same same scope as you - a UI that is more rich.

Couple of things we learned that may apply to SWT were:
- Java was not a very good domain language for UI making it cumbersome to be productive for large application
- It is very nice to use HTML as the frame and embed rich elements

We are now taking the approach of adding rich elements to existing pages and if necessary replacing pages in parts. Gwt gives rich client like things in javascript and still keep app web page pages


Here is what we have started doing with dashboard - found the current mypage not as pretty and myportal not yet ready.
Wanted to pretty it up.

So framed mypage screenlets tags with portlets and portlets under a portal. Gives collapsible, drag drop etc. Still reuses all the work done (so no need to write complete new) as you are only framing html.

our new page looks something like this:

<!-- from header -->
<script language="javascript" src="emforium.gwt.WidgetFactory.nocache.js"></script>

<div em-type="portal" columnWidths=".4,.6">
<div em-type="portlet" em-children-type="html" headerVisible="true" heading="portlet" collapsible="true" expanded="true">
---- screenlets go here
</div>
</div>

As an example of what this gives see : http://extjs.com/examples/portal/portal.html


The header javascript walks the entire page DOM and replaces div tags having em-type='rich widget' with gwt widgets. These gwt widgets could frame html, or be completely standalone. e.g. we are also replacing date selections with a gwt

We could also replace entire segments. e.g replace paginated table with a gwt grid.


There are a few libraries that are rich with widgets in GWT that can be applied. We started with gxt : http://extjs.com/products/gxt/. Some other good candidates are smartgwt ( http://code.google.com/p/smartgwt/ ) and default GWT toolkit and associated google projects have some decent widgets too. (GWT is under apache license so compatible).

It would be very nice if Ofbiz team can consider more GWT. We could provide code.. developer help etc. to promote this. We could start with creating a demo that you can see and see if you want to evaluate this direction more. I feel GWT + HTML is a very good choice for people writing java servers.

GWT theoretically is just a mechanism where you write java code and that is generated into javascript and dom manipulation, but it is much more. - Strong typing in java, debugger support makes it far more productive and reliable to create rich applications. - Due to better approach applied with GWT to rich javascript/ajax/dhtml applications.. one can now write much more complex user interfaces. i.e. take a leap in rich web application capabilities. i.e. write an entire webpos in gwt vs. very hard and buggy to write one entirely in javascript. - Can retain HTML as the frame of application and gwt widgets can contain html. GWT and ftl templates can play together. So low barrier of entry, simple nature of web 1.0 is retained.

Harmeet

On 11/30/08 8:27 PM, BJ Freeman wrote:
Getting ready to change how my SWT(not google) interfaces gets data from
 Ofbiz.

Goals:
1) allow the screens from ofbiz to drive the UI presentation.
   this allows the UI presentation to change as more data is added.
2) return data as a web page so there is no need to reprogram ofbiz.
3) allows the use of https for secure data transfer.

Scope:
Can have a UI that is more rich. Keep ofbiz the same as it is now.

Reply via email to