THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
These are the notes for the nightly build of Struts 2.0.2-DEV
For prior notes in this release series, see Release Notes 2.0.1
- If you are a Maven user, you might want to get started using the Maven Archetype.
- Another quick-start entry point is the blank application. Rename and deploy the WAR as a starting point for your own development.
Backward compatibility issues with prior development release
- As of Struts 2.0.2, Spring is a plugin (WW-1499). If an application specifies the Spring object factory in
struts.properties
, also include thestruts2-spring-plugin.jar
on the application's classpath.- Ideally, move the object factory setting to the XML configuration, using Constant Configuration].
- The Ajax theme is updated to Dojo 0.4, and some tag attributes have changed.
New Features and Plugins
- Codebehind Plugin: Reduce mundane configuration by using "page controller" conventions (WW-1515).
- Spring Plugin: Integrate Spring with your application using a plugin (WW-1499). Or, if you prefer, use the Plexus Plugin instead.
- Zero Configuration: Optionally, eliminate or reduce XML configuration with convention and annotation (WW-1491).
- File Uploading Explore multiple file uploading through our new Showcase example (WW-1479).
- REST-ful URLs: Use search-engine friendly URLs, like category/action/movie/Thrillers (WW-1754).
- Action tag: Eliminate unwanted exceptions with the new
flush
attribute (WW-1472). - Checkboxlist tag: Use Maps with CheckboxList (WW-1471).
- Roles Interceptor: Integrate JAAS with a new interceptor - now on the default stack (WW-1469).
- Localized Links: Use the new
key
attribute to streamline link markup (WW-1458). - Constant Configuration: Override factory default settings from any XML configurtion document, including
web.xml
! (WW-1421). - Action Class Ref: Configure a custom default Action for any package to use instead of ActionSupport (WW-1420).
- Direct Results: Create a custom Result Type directly from an Action class (WW-1393).
Internal Changes
- Dependency Injection: The framework now uses its own dependency injection container, based on Google Guice. Applications are free to use Spring, Plexus, or even a local copy of Guice for any dependency injection needs. Actions can still be instantiated via the Spring configuration, when desired (WW-1499), but Spring is entirely optional now.
- Composite Action Mapper: Multiple Action Mappers can now be chained into a composite
- Precise error reporting: All configuration elements, including properties that come from Java properties files, include location and line information for easier debugging (WW-1510).
- Bean Configuration - Application objects can be injected into the framework or have static values set.