Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

JSF and Struts

 
David Geary
Author
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you, like me, are not a regular here at the ranch, you might not know about this article written by Gregg Bolinger. I just read through it and it's a very good introduction to get you started using JSF.

It's interesting to note that Gregg emphasizes the similarities between Struts and JSF. In many respects, JSF is to Java what Struts is to C++: JSF is a leaner, meaner Struts, and there is an easy migration path from Struts to JSF. Contrast that to Tapestry, a wonderful framework based on WebObjects, which nevertheless, is quite foreign to the average Struts developer.
 
Karthik Guru
Ranch Hand
Posts: 1209
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by David Geary:
and there is an easy migration path from Struts to JSF. Contrast that to Tapestry, a wonderful framework based on WebObjects, which nevertheless, is quite foreign to the average Struts developer.


Hi David,

I just googled and found articles that compare jsf and tapestry a lot. Should relative ease of migration from struts decide the better framework? Which one as per your opinion is better and why?

thanks
 
Varun Khanna
Ranch Hand
Posts: 1400
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
May be a stupid question, but I am curious what exactly the term "migration" means?
Does it mean, as pointed in other thread, replacing the view part of struts with JSF or something of that sort (should n't this ideally be called as "integration" rather than "migration")

OR, does it mean replacing Struts "completely" with JSF?
Moreover, how to select which approach to use out of these two?
 
David Geary
Author
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
First, Struts and JSF. Sometimes it makes sense to use both together. You can use Struts client-side validation (which JSF does not have out of the box) in a JSF application or JSF components in a Struts app, with the struts-faces integration library. By migration, I assume most people mean moving from Struts to JSF completely.

Now, JSF and Tapestry. Fundamentally, these two frameworks are very much alike. Both are second-generation web frameworks that have components and an event model. JSF's strengths are that it's the standard and is familiar to Struts developers, however, JSF 1.0 has a rather skimpy set of components. Tapestry has a richer component set and some nice features, such as developing custom components without writing Java code, that JSF lacks. But Tapestry is a radical departure from Struts.
 
Ko Ko Naing
Ranch Hand
Posts: 3178
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by David Geary:
First, Struts and JSF. Sometimes it makes sense to use both together. You can use Struts client-side validation (which JSF does not have out of the box) in a JSF application or JSF components in a Struts app, with the struts-faces integration library. By migration, I assume most people mean moving from Struts to JSF completely.

I guess complete migration from Struts to JSF could be a bit awesome... Struts developers are pretty settled down to the framework that they are currently using and learning curve would matter also... I guess JSF evangelists should approach to those who are not currently using any web application frameworks...

Now, JSF and Tapestry. Fundamentally, these two frameworks are very much alike. Both are second-generation web frameworks that have components and an event model. JSF's strengths are that it's the standard and is familiar to Struts developers, however, JSF 1.0 has a rather skimpy set of components. Tapestry has a richer component set and some nice features, such as developing custom components without writing Java code, that JSF lacks. But Tapestry is a radical departure from Struts.

You are right. IMO, Tapestry does not get much acceptance from the industries like Struts, even though each of them work different ways... I feel that open-source tools need industry acceptance to survive in the competitive world of I.T....
 
Pradeep bhatt
Ranch Hand
Posts: 8933
Firefox Browser Java Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Struts users may be interested in Shale(as Gregg had mentioned in anotherb thread) which will replace structs taglibs
http://svn.apache.org/viewcvs.cgi/*checkout*/struts/sandbox/trunk/struts-shale/README.html
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic