I also did a lot of research comparing JSF and Struts when I started my last project. In the end, I concluded that JSF did not have the maturity of Struts and was too focused on the presentation layer to the detriment of the business logic layer. Because our project relies very heavily on a reuable business logic layer (so that we can repurpose our product for B2C, B2B, internal uses, and web services), Struts offered a better platform for us.
In addition, since Struts is a much more mature product, there's a lot more help for it on the web, better integration between it and other products, and we can also hire developers that already know it. To me, JSF seemed like a lot of hype since it doesn't yet have those things.
Maybe JSF 2.0 (or 1.2?) will fix some of these problems, but until then I don't feel bad about using a widely supported, widely known technology (read: Struts) in my products.
Jon Emerson
Adobe Systems, Inc.
http://www.jonemerson.net/