(tick) These are the notes for the Struts 2.5.8 distribution.

(tick) For prior notes in this release series, see Version Notes 2.5.5

  • If you are a Maven user, you might want to get started using the Maven Archetype.
Maven Dependency
<dependency>
  <groupId>org.apache.struts</groupId>
  <artifactId>struts2-core</artifactId>
  <version>2.5.8</version>
</dependency>

You can also use Struts Archetype Catalog like below

Struts Archetype Catalog
mvn archetype:generate -DarchetypeCatalog=http://struts.apache.org/
Staging Repository
<repositories>
  <repository>
    <id>apache.nexus</id>
    <name>ASF Nexus Staging</name>
    <url>https://repository.apache.org/content/groups/staging/</url>
  </repository>
</repositories>

Internal Changes

  • (warning) Possible DoS attack when using URLValidatorS2-044

Bug

  • [WW-2561] - Included XSL files' URI not being resolved for actions with result type="xslt"
  • [WW-3019] - ConcurrentModificationException using s:iterator (intermittent)
  • [WW-3170] - ObjectFactory reporting ERROR's when you attempt to set parameters on a Redirect result
  • [WW-3654] - Failed validation returns Action.NONE instead of Action.INPUT
  • [WW-3957] - Multiple concurrent AJAX requests can collide
  • [WW-3995] - please change reset.ftl so html id is not lost
  • [WW-4367] - preselect values in <s:optgroup>
  • [WW-4636] - File upload error message always in default language
  • [WW-4701] - Can no longer clear parameter on a <s:url> tag.
  • [WW-4702] - List based parameters no longer work when there is only one value.
  • [WW-4703] - NullPointerException in ActionSupport when use ModelDriven
  • [WW-4707] - Multiselect parameter behavior different between struts 2.5.5 and 2.5.1
  • [WW-4708] - struts2-archetype-blank not found for struts v2.5.5
  • [WW-4709] - Invalid field value for field "id"
  • [WW-4715] - Scope interceptor always resets because of org.apache.struts2.dispatcher.HttpParameters
  • [WW-4716] - HelloWorldTest throws NullPointerException
  • [WW-4718] - focusElement form attribute not working
  • [WW-4722] - Portlet Issue with I18Interceptor

Improvement

  • [WW-2454] - TestNG dependency update from 5.1 to 5.3 + update to coupled maven plugin
  • [WW-4171] - getText methods are not documented as evaluating OGNL
  • [WW-4214] - Rename of struts token attribute name
  • [WW-4391] - FreemarkerResult should respect response.getCharacterEncoding()
  • [WW-4698] - Allow <constant/> value substitution in XML configuration
  • [WW-4704] - Upgrade to latest OGNL version
  • [WW-4705] - Add support for long type to <s:date> tag
  • [WW-4710] - Disallow access to HttpParameters.toMap
  • [WW-4711] - <s:text/> tag should not evaluate defaultMessage against a ValueStack by default
  • [WW-4712] - TextProviderHelper#getText() should perform cleaning of "defaultMessage"
  • [WW-4717] - Refactor file upload support to allow create virtual representation of java.io.File
  • [WW-4719] - Move "DefaultClassFinder" into Convnention plugin
  • [WW-4720] - HttpParameters should behave like a Map
  • [WW-4721] - Add support for "roundingMode" in <s:number/> tag

 

This release contains fixes related to S2-044 security bulletin, please read it carefully!

Issue Detail

Issue List

Other resources