posted 20 years ago
Hi everyone,
this is really an important issue, so i'll give my opinions.
First of all, using some frameworks doesn't mean you can't use other ones. Sometimes, a conjunction of them is very nice. You can use, for example, JSTL + Struts + Velocity + Tiles + ... actually, this is very usual. You can even use JSF with Struts (that's what i heard, and with a first view, i really think that is possible, it's probably not recomended).
There are a few things though that you need to keep in mind, MVC for architecting and Design Patterns where needed.
Following this, you have nowadays, two basic options:
StrutsJSF
Personally i think Struts is a great framework and the time you spent learning it will save a lot, lot, lot time of developing latter. It's worth!
Modelling your app without Struts is possible of course, but it'll take more time and much more effort. Nevertheless, keep in mind that Struts won't do everything for you, it'll give you the basis, if you want, it's very simple to ruin the MVC helping of Struts.
I don't know JSF, but it is sure a great techonology, altough it hasen't gotten so popular yet (everything needs some time), so the market is still in a lattence period. A lot of recognized professionals have gone in JSFs direction latelly.
JSF also incoporates most ideais of Struts (maybe all of them) and a lot more (note that Craig McClanahan, the "inventor" of Struts is also one of the creators of JSF). From some pieces of code i've seen, JSF can give you a lot of productivity. JSF also comes from JCP, what is an important thing (Struts is not a JCP framework).
Finally, it's a bet, take the "risk" with JSF (i don't really know if we say that this is actually a risk, as i said, a lot of people have gone to the directions of JSF), or go with the already stabilished and recognized technology, Struts.
Another point to evaluate is how much time you have for developing, JSF seems to be quite complex compared to Struts.
Leandro Melo
SCJP 1.4, SCWCD 1.4