Home > FAQs > What are some of the framework's best features |

Apache Struts 2 Documentation
What are some of the framework's best features
Edit Page Browse Space Add Page Add News

Key features of the framework include:

### Core

- Pluggable framework architecture that allows request lifecycles to be customized for each action.
- Flexible validation framework that allows validation rules to be decoupled from action code.
- Hierarchical approach to internationalization that simplifies localizing applications.
- Automatic type conversion that transparently maps values from HTTP to native Java data objects, solving one of the most tedious efforts when creating web applications.
- Integrated dependency injection engine that manages component lifecycle and dependencies.
- Modular configuration files that use packages and namespaces to simplify managing large projects with hundreds of actions.
- Java 5 annotations that reduce configuration overhead. (Java 1.4 is the minimum platform.)

### View

- Reusable user interface tags that allow for easy component-oriented development using themes and templates. Bundled tags ranges from simple text fields to advanced tags like date pickers and tree views.
- JSTL-compatible expression language (OGNL) that exposes properties on multiple objects as if they were a single JavaBean.
- Pluggable Result Types that support multiple view technologies, including JSP, FreeMarker, Velocity, PDF, and JasperReports.
- Optional AJAX theme that simplifes creating interactive web applications.
- Optional Interceptor plugins that can execute long-running queries in the background, prevent multiple form submissions, or handle custom security schemes.

### Other

- Easy integration with other popular products, including Hibernate, Spring, SiteMesh, and JSTL.
- Distributed under the business-friendly Apache License 2.0.