Struts Action Framework 2 is a web-based MVC framework that emphasizes simplicity and interoperability. Features of the framework include reusable UI template and themes, internationalization, dynamic form parameter mapping to JavaBeans, robust client and server side validation, and much more.
Struts Action Framework 2 is at a pre-release, pre-Alpha stage. If you are just getting started with Action2/WebWork2, we recommend WebWork 2.2 as an entry point. WW2 is stable and production ready. When SAF2 is released, migration paths for WW2 and SAF1 developers will be available.
See the SAF2 release plan for details and status.
The online documentation is grouped into five sections.
The framework is designed to minimize coding so that developers can spend less time fussing with HTTP and HTML plumbing (leaving more time to work on the interesting parts of an application).
2 is an elegant, extensible framework for building enterprise-ready Java web applications. Distributions of Struts 2 are available as a free download under the Apache License.
- For more about the Apache Struts project itself, visit the project web site.
- Quickstart with Struts 2 Maven Archetypes.
- Struts 2 is extended using Plugins. A list of available plugins is available at the Struts 2 Plugin Registry.
- Tired of XML-based configurations, or need some extra agility? Try the Convention Plugin or its RESTful cousin, the REST Plugin.
- Interested in books, articles, and presentations about Struts? Check out some Other Resources.
- For other community-supported Struts resources, visit the Struts 2 Wiki.
The contents of the Struts 2 documentation wiki (what you're reading now) are distributed with each release, but maintained via the on-line wiki.
We've started planning the next version of Struts aka Struts 3 (or 2.5) which will break backward compatibility, if you want to join please add your two cents here.
The documentation is grouped into four areas.
Our tutorials are designed to help you get started with the framework , from ASAP. We offer an all-purpose "soup to nuts" tutorials to Bootstrap" tutorial as well as specialty tutorials on portlets and database access.
Third party extensions and other tools help integrate the framework into your development environment.
The framework offers a flexible view layer that supports multiple view technologies, including JSP, FreeMaker, and Velocity.
In processing a request, the framework utilizes three key class types: Actions, Interceptors, and Results, which are configured using one or more XML documents (or Java 5 annotations).
Extensions, Plugins, and Tools
View Developers Guide
Core Developers Guide
Help with WebWork2
Our in-depth technical guides focus on specific components of the framework, such as the Core framework, Struts Tags, and optional Extensions, as well as migrating from Struts 1 or WebWork 2.
Our FAQs and Cookbook examples provide a wide range of rapid-fire "HOWTOs" in question-and-answer format.
Our security bulletins explain any security issues and their solutions
Books, articles, and presentations about Struts 2.
The Struts 2 Community Wiki is an additional resource. It is not distributed with Struts 2, and contributions to the community wiki do not require a CLA.