Apache Struts 2 provides a simple plugin architecture so that developers can extend the framework just by adding a JAR to the application's classpath (in addition to whatever JARs may be required to fulfill the dependencies of the plugin itself). Since plugins are contained in a JAR, they are easy to share with others. Here, we list plugins available for Struts 2 and provides help on how to use them.

Contributed plugins may be of varying quality. If not bundled with the official Struts 2 distribution, a plugin cannot be guaranteed to be safe. You install plugins from this space at your own risk. We do not monitor or guarantee any code posted in this space. If you find dangerous or malicious code posted here, please contact the Struts User mailing list immediately.

To follow plugin development, subscribe to these feeds with any RSS reader:

Table of content:


Blog Posts

(tick) To announce a plugin that is hosted elsewhere, register with this wiki, and create a new "News" announcement.


Plugins listed here were bundled with Struts 2, they are now officially supported by Struts Community. You can find more details about given plugin in Struts 2 Documentation Plugin Developers Guide.

  • REST Pluginprovides tools to build RESTful applications
  • Config Browser Plugina simple tool to help view your Struts configuration at runtime
  • Convention Plugina code by convention and component plugin similar to the Codebehind and Zero-config plugins
  • DWR Pluginprovides integration with the Ajax framework Direct Web Remoting http://getahead.org/dwr
  • JasperReports Pluginenables Actions to return reports through JasperReports
  • Java Templates Plugin
  • JFreeChart Pluginallows Actions to easily return generated charts and graphs
  • JSON Pluginprovides a "json" result type that serializes actions into JSON
  • JUnit Pluginprovides integration with the popular JUnit http://junit.org unit testing framework
  • OSGi Pluginprovides support for starting an instance of Apache Felix inside a web application, and scanning installed bundles for Struts configuration
  • Pell Multipart Plugin
  • Plexus Pluginenables Struts Actions, Interceptors, and Results to be created and injected by Plexus http://plexus.codehaus.org/
  • Portlet Pluginis used for developing JSR168 portlets using Struts 2
  • Sitemesh Pluginallows Sitemesh templates to access Struts information
  • SmartURLs plugin
  • Spring Pluginallows Actions, Interceptors, and Results to be created and/or autowired by Spring
  • TestNG Pluginprovides integration with the popular TestNG http://testng.org unit testing framework
  • Tiles Pluginallows actions to return Tiles pages

Plugins listed here are not any more actively developed (last commit before year 2010) or were deprecated.


Have a bug report or feature request? - The registry lists plugins made available by various authors. To file a report regarding a third-party plugin, visit the homepage for the plugin in question. (Most of the external plugins are hosted by Google Code, and you can file an Issue there.) If the report regards a plugin bundled with the Apache Struts distribution, then (and only then) use the Struts issue tracker.