If you’re about to start the development of a new application, you may feel torn between all the possibilities. I don’t have a crystal ball so I can’t tell you what the future holds (and even if I did, I doubt it would help much), but based on what has happened with other Java web application technologies over the years, I’m pretty confident that JSF will continue to evolve and incorporate more of the features found in frameworks like Struts. It’s also clear that there’s broad industry support for JSF, so we’re likely to see a lot of JSF implementations, development tools, component kits and add-ons, and training classes and books entering the market in 2004 and beyond.
I suggest that you look primarily for what you need from a framework for the first version of the application. If JSF covers those needs, I recommend that you go for a pure JSF application. If there are Struts features that you know you need for the first version, consider using the Struts-Faces integration package and pick the best parts from each technology.