Apache Struts 2 Documentation > WebWork 2.1.7 |

Apache Struts 2 Documentation
WebWork 2.1.7
Edit Page Browse Space Add Page Add News
Added by Patrick Lightbody, last edited by Ted Husted on Nov 21, 2006 (view change)

## WebWork 2.1.7 release notes

### Key changes

- XWork upgraded to 1.0.5
  - Using i18n, especially the ww:text tag, is now possible in SiteMesh decorators. See SiteMesh Plugin.
  - Issues where the ActionContext wasn't properly cleaned up (after ww:include and ww:action) have been resolved.
  - Configuration
    - If the action class is not specified, it now defaults to com.opensymphony.xwork.ActionSupport.
    - If the result name is not specified, it is assumed to be "success".
- Non-UI tags
  - ww:text and ww:url have an id attribute that, when specified, causes the tag not to print out the localized text but rather store the result in the ActionContext to be referenced later. See SiteMesh Plugin, URL tag, and Text tag.
- UI tags
  - ww:form has an added target attribute.
  - ww:form exposes "namespace" in the parameters Map in templates.
  - ww:form tag defaults the id and name attribute to the action name that it is submitting to.
  - Form elements default the id attribute to "[formId]_[elementName]".
  - Form elements default the "required" attribute to true if there is any validator associated with that field and the form's validate attribute is enabled.
  - ww:textarea has an added "wrap" attribute.
  - XHTML theme: added a parameter called "after" and that will add text to the right of the form element.
- Replaced old prototype client-side validation with XmlHttpRequest-based solution (STILL IN PROTOTYPE PHASE, works in XHTML theme only).
- Interceptors
  - ServletConfigInterceptor now checks for actions implementing PrincipalAware and adds a Principal that ties in to the HttpServletRequest's Principal.
  - Minor bug fixes in the ExecuteAndWaitInterceptor and FileUploadInterceptor.
- Results
  - JasperReportsResult and StreamResult both support the Content-disposition header.
  - JasperReports integration has been upgraded to 0.6.3.
  - WebWorkResultSupport has a simple conditionalParse() method making support for ${} notation in your results easier (it will parse only if the parse attribute is true).

### Upgrade steps

1. Copy over the new webwork.jar and xwork.jar files.
2. If you are using JasperReports, you will need to upgrade to the latest JasperReports jars of 0.6.3 because the package name has changed.
3. Read the migration notes for anything that you should be aware of.

### Migration notes

- If you were using the old client-side validation code, it is still possible to keep using it but you will likely need to modify form-close.vm and controlheader.vm in the XHTML theme and form.vm in the simple theme. We recommend supporting the new prototype as it is a lot easier to use and doesn't require special validators.
- It is possible, though very unlikely, that the default ids for the UI tags and the default name for the form tag might cause you some trouble. Please be aware of this change.

### Changelog

OpenSymphony JIRA (26 issues)
T | Key | Summary
--- | --- | ---
| WW-1067 | Error undeploying webapps on Tomcat
| WW-706 | Text tag and URL tag should have option to store contents to context
| WW-704 | Integrate PrincipalInterceptor with ServletConfigInterceptor
| WW-703 | Add wrap attribute to textarea
| WW-702 | Required (*) should be on by default if a validator exists
| WW-701 | UI tags should have default ids and names
| WW-698 | webwork.i18n.encoding does not get set by the ServletDispatcher
| WW-696 | StreamResult should accept file option
| WW-695 | JSP Form Tags does not have a target attribute
| WW-694 | ExecuteAndWaitInterceptor can return null results
| WW-693 | FileUploadInterceptor don't check the allowed files's Enumeration whitch is null.
| WW-692 | Webwork package of jasper reports packaged as dori.jasper. Latest release of Jasper Reports packaged as net.sf.jasperreports
| WW-691 | JasperReports 0.6.3 support
| WW-687 | Freemarker - add method buildUrl to FreemakerWebworkUtil
| WW-686 | JasperReport result - Content-Disposition management
| WW-684 | Default action class and result name.
| WW-681 | getText() doesn't work in Sitemesh filters
| WW-677 | ww:include replaces existing value stack with new one
| WW-676 | Freemarker Support:TemplatePath in web.xml has no effect
| WW-668 | Externalise the JavaScript validation support from the JSP taglibs
| WW-638 | Freemarker result encoding error
| WW-637 | textarea does not have maxlength attribute
| WW-617 | Stale Action Invocation left in Stack Context
| WW-490 | Is WW ignoring webwork.locale setting?
| WW-455 | Select tag template does not work properly for Object like BigDecima
| WW-351 | Forwarding unknown tag attributes