...
- Various changes to ConfigurationManager
- ConfigurationManager is no longer a static factory. It is now an instance created through Dispatcher. Custom configuration could be done through DispatcherListener.
- Custom configuration to ConfigurationManager and Configuration cannot be done statically anymore, instead use Dispatcher's DispatcherListener to achieve the same effect.
- The
prepare
interceptor now uses reflection to call prepare_Method_ where method is the action method configured for the particular action instruts.xml
.Code Block <action name="myAction" method="insert" ....> ..... </action> // with the above configuration, and PrepareInterceptor in play, // callsequence will be 1] prepareInsert() (If it exists) 2] prepare() (Unless Interceptor's alwaysInvokePrepare parameter is set to false) 3] insert()
- DefaultWorkflowInterceptor (named
workflow
instruts-default.xml
) now uses reflection to callvalidateMethod
on the action class that implements Validateable interface wheremethod
is the action method configured for the particular action instruts.xml
.Code Block <action name="myAction" method="insert" ...> ... </action> // with the above configuration, and DefaultWorkflowInterceptor in play, // call sequence for action that implements Validateable interface will be 1] validateInsert() 2] validate() (unless Interceptor's alwaysInvokeValidate parameter is set to false) 3] insert()
- The tooltip library used by the xhtml theme was replaced by Dojo's tooltip component.
- Datepicker tag is now using dojo's (limited in terms functionality and internationalization)
- Tiles integration plugin is available.
- Wildcards can be specified in action mappings.
- MessageStoreInterceptor is introduced to allow field errors / action errors and messages to be store and retrieve through session, resulting them to be preservable across request.
...