Major improvements include:
- Expression Based Validation: Validations can now be written in the JSP Expression Language (EL). The expression is specified in an annotation along with other validations.
- Flexible Validation Methods: ActionBeans can now have more than one custom validation method, and additional control can be asserted over when the validation is run (by event, by error state etc.)
- Validation Filtering By Event: It is now possible to fine tune validations by specifying that a field is required only for a particular event or events, or is required for all events except specified events.
- Interceptor System: Stripes now includes a generic Interceptor system. The request processing lifecycle is defined by an enumeration, and it is possible to interceptor around any/all lifecycle stages easily. An example interceptor ships with Stripes that enables before/after methods within ActionBeans.
- Exception Handling System: A new ExceptionHandler interface is used to handle any unhandled exceptions raised anywhere in the application. The primary benefit of this system is to be able to execute arbitrary java code on exceptions instead of simply rendering a view.
- URL Alternatives: It is now possible to specify fully qualified class names or provide Class objects almost anywhere the system expects a URL. While not everyone will like this it provides significant flexibility to change URL strategies without impacting other classes and views.