As a general rule, I would only use Struts if I had a considerable legacy
system built with it. In that case, depending upon the skillsets of your
team and the amount of legacy code, it might be better to stick with Struts.

But otherwise, Struts is dated, and in today's world is a pretty tedious way
to develop a new application. JSF is much better. For example, value
expressions in JSF reduce the amount of code you must write vs. Struts in a
big way. Instead of implementing a Struts action, that's passed a form bean,
from which you manually pull strings, convert them to their appropriate
type, and manually push that data to the model, in JSF, you just do this: #{
bean.property} and JSF takes care of all that tedium for you. Struts
dynabeans help in that regard, but still...

That said, JSF has many flaws and holes; for example, JSF doesn't explicitly
support client-side validation out of the box. Shale, and other open-source
frameworks such as Facelets, Seam, and Ajax4jsf serve to fill those holes
and provide a great deal of cool functionality on top.

btw, all of my comments concerning Struts refer to Struts 1.X. I know very
little about Struts 2, other than it is really WebWork in disguise.


david

2006/11/14, Thomas Walland <[EMAIL PROTECTED]>:

I have a question to the usage of JSF and Shale.

Are there any rules or is there any limitation, when Shale/JSF should
be applied to a project?

Until now I only worked with Struts. So I was involved in page-centric
developement.

Is it easy to build applications which uses user-input in a massive
way? For example, triggering some actions because of some input-data?

I just want a few rules or tipps, when to use JSF and when it would be
better to continue using struts.

Thanks a lot,
Thomas


Reply via email to