Are there any strategies for migrating legacy web applications, such as Struts 1.x on JEE 1.3, to a JEE 5 architecture incorporating Seam?
There are a huge number of enterprise applications stuck on this legacy architecture and with the prospect of IBM eventually moving WAS to support JEE 5 there is potential to migrate applications as the business opportunities arise.
I'm looking for documentation that would allow me to develop an understanding of where Seam could start to be injected into these legacy web apps.
This is a tricky question because it really depends on where most of the logic resides. If you have one of those applications where everything is written in the JSP, then you are pretty much in trouble because you have to manually strip out that logic and push it into Seam components and replace the page with JSF controls.
On the other hand, if you have a well layered application, perhaps even using a bunch of EJBs, then migration to Seam is relatively easy because you just and decorate those services with the @Name annotation and you can bind them to the UI or you can create a intermediary component that delegates to those backend services.
Frankly, though, migrating legacy applications is really not a good investment unless there is a solid reason to go touching working code. If you do have to make changes to the application, you are going to spend less money just rewriting the thing than trying to merge in a new framework. I have seen merges and they never go all the way, then you end up with half new and half old and the child is uglier than either of the parents.