views:

534

answers:

7

Which is best, or in other words, whish is easiest to use? Stripes or JSF.

Although I haven't used both in anger I need to gauge what is the best option to work with for both starting new projects and converting existing Struts projects.

I have a fear that JSF won't render as nicely as I want but what are others experiences? Seems Stripes is far more straight forward, would I be correct in this assumption?

Cheers.

A: 

jsf far more used, so you should have better support if anything weird happens. That is enough reason for me to use it.

awregan
Disagree - more "weird" stuff happens in JSF because it's so much more complicated. That is enough reason for me *not* to use it.
Nate
Not true. JSF suffers from many problems that do not get solved from this supposed "better support".
Frederic Daoud
A: 

I would use JSF. It is used far more widely and iceFaces is a very handy package for JSF based apps.

CoolBeans
why down vote? Care to explain please?
CoolBeans
+11  A: 

Which is best, or in other words, which is easiest to use? Stripes or JSF.

Which is the best? Well, Stripes and JSF are different. The former is an action-based framework (like Struts) while the later is component-based (like Wicket). So the answer will depend on your experience and knowledge of action-based flow vs component-based hierarchy and both have their strengths and weaknesses. Which is the easiest? Stripes, no doubts about that.

What I love about Stripes:

  • It's simple and easy i.e. it has a low learning curve.
  • I love its convention over configuration approach.
  • It's lightweight.
  • It's well documented (and you don't need tons of documentation because of its simplicity).
  • It has a small but reactive community (you'll get answers on the mailing lists).

If both are new to you, I'd go for Stripes. If you want to learn a component-based framework, I think it's easier to start with Wicket (also see what Gavin King says in How to start learning Java EE 6).

Pascal Thivent
+1 I very much agree with all of those points (especially the docs - I was surprised at how good they are, so much of open source tools' docs leave a lot to be desired, the stripes cookbook is awesome!)(my experience with the stripes community was less speedy though!)
James B
@James Good point, perception of speed is somehow subjective and I've updated my answer.
Pascal Thivent
+1 Finally a valid answer which doesn't bash JSF. True, JSF has a pretty steep learning curve, but it has its strongnesses as well.
BalusC
Stripes just rocks! It's the most elegant MVC framework that does not need complicated XML configuration. It has no steep learning curve, offers SEO friendly links and is lightning fast!
Kdeveloper
@Kdeveloper and stripes does nothing requiring you to build each and every widget, thats right all the javascript, css etc. If you only want boring plain HTML elements and nothing else then its fine.
mP
@mp: Stripes is a light weight framework and because it offers full control on the generated HTML it can combined with any Javascript component framework (Yui, JQuery UI, etc.). This makes Stripes especially well suited for building consumer-facing websites that need full control on their HTML.
Kdeveloper
A: 

Seam is nice application stack for developing JSF apps, not sure about Stipes.

  • Conversions
  • Nice ajax support
  • Rich set of components
  • Annotations over XML configuration

One thing I don't like about JSF is hight learning curve specially if you are new comer to JSF.

Greg
JSF 2 with facelets is much, much nicer than JSF 1.
Thorbjørn Ravn Andersen
+2  A: 

The best web framework? Like often this question results in an “it depends” answer.

The other question: “what the easiest to use framework”. Is easier to answer, that Stripes. JSF has a notorious steep learning curve. Stripes on the other hand is easy to setup and easy to learn.

The Stripes framework is like Struts but only better. For example, it uses annotations instead of XML configuration files. Just like the Struts framework it’s an action based framework, only more elegant. This means it closely follows the stateless nature of the HTTP event processing. This is good if you want high performance and maximum flexibility in how you’re pages are generated.

A framework like JSF is not an action based framework but component based framework. This means it moves a layer of abstraction between HTTP and your application. This layer makes it possible to program JSF applications as if you’re programming a Swing application. Thus JSF basically handles the paradigm mismatch between the components model and the stateless HTTP life cycle. This layer of abstraction however, will cost some performance; also it will give you somewhat lesser degree of control on the generated HTML.

Kdeveloper
A: 

Stripes like Struts does not really do a lot for your app. Besides some elementary routing and populating of forms and executing actions it does basically nothing. Last time i checked most(all) stripes tags are basically fascades for the equivalent html tag with little or no extras. That said JSF does give more but if you want a real technology that is not stuck in the year 2000 - consider GWT.

mP
A: 

JSF is part of JEE 6+. That means will be available and maintained for a very long time, which is important to us.

Also different implementations may occur which allows you to choose the best one for a given purpose.

Thorbjørn Ravn Andersen