Make the best use of the built-in Actions. Review the systems you build and see how you can use ForwardAction to stick to MVC, how to use DispatchAction and LookupDispatchAction to simplify things and perhaps even internationalize your application. Split your application into modules and create separate struts config files. Smaller files are easier to comprehend and manage. Doing so will benefit you in the long run. Define a base Form and Action in your application. You will be glad you did. Handle duplicate form submissions using redirects and synchronizer tokens. Use a tool to manage the Struts Config files and strictly follow the guidelines about what goes into Action and what does not.