I work in a large corporation and although my team (about 20ish people) likes to see itself as innovative high achievers I feel that we have a long way to go. I have often suggested moving from Struts 1 to Struts 2 but there is a general feeling that this will be too hard to accomplish and that it's 'safer' to stay with Struts 1.
What can I say to my team to convince them to adopt Struts 2? What are the benefits? How does Struts 2 compare to Spring MVC?
The best way to approach any migration is to evaluate your current pain points and compare them against the feature set of the proposed framework. I'd recommend taking a look back on your current applications and see how much "plumbing" code your team has had to write itself, how testable your apps are, and how many features you had to throw out because it would just take too long. Then, look at the feature list of Struts 2 and its plugin registry and determine if the cost of training and retooling would be worth the benefit.
Also, I've found for existing large applications, doing a major upgrade of the web framework is rarely a good idea. Yes, Struts 2 provides tools, tutorials, and even books to help teams migrate, but be sure that the benefits of the new framework outweigh the costs of rewriting the presentation-layer bits of your application first. One possibility, of course, is to run Struts 2 and Struts 1 side-by-side, migrating over modules as you go. For some teams, this may be fine, but for others, consistency is worth more than a few more features.