Some history. I've worked on two major projects in the past few years. One of them was written using the Enhydra presentation framework with XMLC. The other one, which I had a large part in specifying, but not writing, uses Struts for the web framework.
So, now that I'm starting with a clean sheet I'm taking a serious look at what is out there. My original inclination was to use Struts 1.2 and then back my way into another frame work down the road. I figured that in the long run we'd likely port to JSF.
Well, I've spent a lot of time with "Professional Java Development with the Spring Framework" by Rod Johnson, et. al., over the past week and I really like what I'm reading. It has me seriously rethinking my decision to use Struts 1.2.