File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes JSF and the fly likes JSF vs GWT (+ some question on DOM Manipulation) Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » JSF
Bookmark "JSF vs GWT (+ some question on DOM Manipulation) " Watch "JSF vs GWT (+ some question on DOM Manipulation) " New topic
Author

JSF vs GWT (+ some question on DOM Manipulation)

Sophie Schnabl
Greenhorn

Joined: Mar 26, 2009
Posts: 4
I'm working on a project and I'm trying to decide between JSF and GWT. I have read up on JSF and so far I rather like it, particularly the ways you can build your own components and overwrite renderers. Now I need some Ajax features such as drag and drop and autocomplete. I have looked into richfaces and my impression has been that it seems almost painfully slow (at least that was my impression when looking at their demo). Also, while reading up on Ajax most Ajax books praise DOM manipulation as a way to make Ajax effective. Do I understand this correctly that GWT components are faster because they are mostly client side while JSF is serverside? Does JSF use any DOM manipulation? How do I steer it if I were to write my own component? Is that what subview does?

Anyway,

Things I really like/need about JSF:
Rendered/onUserRole attributes
Databinding
Componets (like datalist) are very useful for things such as automatic form generating
And when it comes to thick client vs. thick server my gut instinct is towards thick server because it seems more secure

But things that worry me are:
Claims that GWT is better when it comes to something running in differnt browsers
Speed (wouldn't it make sense if at least some component behavior was handled by DOM manipulation? Or is that the case anyway for components such as collapsible etc)
I have also heard good things about easy to use/flat learning curve

Does GWT by any chance now support some of the JSF things listed above? Should I look into some of the solutions that try to integrate GWT into JSF? Or should I just stick with Richfaces?

(I have read several JSF/GWT comparisons but most of them appear to be fairly old (like 2006) so I'm not sure if things haven't changed a lot in the meantime)
Oleg Tikhonov
Ranch Hand

Joined: Aug 02, 2008
Posts: 55
Hello, Sophie!
I would like to advise ICEFaces. The link is here: Why ICEFaces

They use technique which called D2D. Rendering occurs into a server-side DOM and only incremental changes to the DOM are delivered to the browser.

They have 55+ components. If you wish you can develop by yourself. I tested my application on both (IE and Firefox) browsers. Looks similar. The Ajax mechanism is build in the components, like partialSubmit.
>>And when it comes to thick client vs. thick server my gut instinct is towards thick server because it seems more secure.
Ditto.
>>I have also heard good things about easy to use/flat learning curve
:-) It depends on the personal experience.

Hope it helps you to make the right decision.
Best regards,
Oleg.


Sophie Schnabl
Greenhorn

Joined: Mar 26, 2009
Posts: 4
I have seen IceFaces and noticed that it seems to be faster than richfaces. But I can't/don't want to use it because it is based on JSF 1.1 rather than 1.2 and so far I have used 1.2 to write my own componentes (I also like ValueExpression more than ValueBinding) and I can't have both JSF 1 and 2 in the same project, it gives me an error when I try to include both libs.

In fact, I was all set to use IceFaces till I noticed it was incompatible with what I had already written. And it seems like the 1.2 compatible version isn't coming out for a while.
Oleg Tikhonov
Ranch Hand

Joined: Aug 02, 2008
Posts: 55
They say: "Improved JSF 1.2 Support. ICEfaces can now be used in JSF 1.2 runtime environments utilizing the JSF 1.2 document schemas for the faces-config.xml and web.xml files when used with Sun JSF 1.2_09 or greater. Previous ICEfaces versions (and 1.8.0 when used with older JSF 1.2 runtimes) require the use of the JSF 1.1 document DTDs (so-called "compatibility mode")."


In my projects i also use JSF 1.2 re.
Sophie Schnabl
Greenhorn

Joined: Mar 26, 2009
Posts: 4
Wow. I checked Icefaces out barely a month ago and back then the current version I downloaded was 1.7.2; Thanks, I really should have checked with them again. Back then I read that 1.2 would be supported with Icefaces 2.0 and that that wouldn't come out for quite a while.

Thanks for the tip.
 
Don't get me started about those stupid light bulbs.
 
subject: JSF vs GWT (+ some question on DOM Manipulation)