JavaScript client validation support - not totally complete, but basic validators work well. Look at the validators.xml file include in src/example to see how you can configure your validators to do client side validation on top of their normal duties
The label attribute in UI tags are no longer required
The themes and templates in UI tags behave like they did in 1.x
A new theme, in addition to the existing "xhtml" one, called "simple" is included that doesn't have any of the labels, error reporting, or table rows that the "xhtml" template has. This is more in line with the tags included with Struts.
New UI tags for CSS styles and classes added: cssStyle and cssClass
Old action!command URL support works again. This means you can invoke a doCommand() method like in 1.x
ww:param tag no longer requires the name attribute (for ordered params, like with ww:text). It also evaluates the the body as the value if no value is given.
UI tags now have access to the FormTag parameter map using the "form" key. This means $parameters.form.name would return the form name, for example. The result is that complex JavaScript-based components can be built.
Migration Notes
Version
Description
Old Code
New Code
2.0
WebWorkUtil has been refactored into a number of classes, and the constructor has changed. If you were using it for Velocity support before, look at VelocityWebWorkUtil now
2.0
The webwork.ui.templateDir configuration property has been broken into webwork.ui.templateDir and webwork.ui.theme
"namespace" attribute of the ww:action tag is now evaluated; those upgrading from 2.0 will need to place single quotes around the attribute value
<ww:action namespace="/foo" .../>
<ww:action namespace="'/foo'" .../>
2.0, but not 1.x
theme and template attributes in UI tags have changed are now evaluated; those upgrading from 2.0 will need to place single quotes around the attribute value