(tick) These are the notes for the Struts version 6.2.0 distribution.

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

Maven users

If you are a Maven user, you might want to get started using the Maven Archetype.

Maven Dependency

You can also use Struts Archetype Catalog like below

Struts Archetype Catalog
mvn archetype:generate -DarchetypeCatalog=http://struts.apache.org/
Staging Repository
    <name>ASF Nexus Staging</name>


  • [WW-4434] - datetextfield.ftl is missing
  • [WW-5199] - StrutsPrepareFilter and StrutsExecuteFilter do not support forwarding to another action
  • [WW-5263] - CSP related interceptors have wrong short names
  • [WW-5270] - Forwarding from a Struts excluded URL to an Action not working
  • [WW-5271] - Select tag NOT working when using list="#{ ... }"
  • [WW-5272] - java.lang.UnsupportedOperationException in the Time component
  • [WW-5276] - Cleanup method of request is not called
  • [WW-5289] - Execute and Wait Interceptor prevents JVM shutdown
  • [WW-5295] - s:date ignores LocalTime
  • [WW-5296] - Wrong DTD version
  • [WW-5301] - Impossible to select alternate default VelocityManager bean
  • [WW-5302] - Autogenerated html ID bases on unevaluated value of the name/action/method attributes
  • [WW-5307] - Confusing documentation about ognl
  • [WW-5309] - NamedVariablePatternMatcher throws when pattern begins with a variable
  • [WW-5310] - s:url does not handle equal sign correctly
  • [WW-5311] - NamedVariablePatternMatcher throws an IllegalArgumentException when named variable is not the last part of the sequence
  • [WW-5312] - ExecuteAndWaitInterceptor inconsistent wait processing behaviour

New Feature

  • [WW-5275] - Allow to configure more flexible Content-Security-Policy


  • [WW-4404] - Implement HttpInterceptor
  • [WW-5196] - Make RequestMap and ApplicationMap to use generics, also correct SessionMap to always be of type <String, Object>
  • [WW-5243] - Removes support for "struts.mapper.action.prefix.crossNamespaces"
  • [WW-5251] - Remove deprecated interfaces used with ServletConfigInterceptor
  • [WW-5253] - Remove deprecated methods from DefaultUrlHelper
  • [WW-5261] - Refactor TagUtils#getStack()
  • [WW-5262] - Extract excluded classes and beans out of struts-default.xml
  • [WW-5264] - Extract XSLT result into a dedicated plugin
  • [WW-5265] - Allow removal of a single/specific container provider
  • [WW-5266] - Add configuration option for a per-file max size for multipart requests
  • [WW-5268] - Add configuration option to exempt classes from OGNL package exclusions
  • [WW-5273] - Support fileupload using native Servlet API 3.1 logic
  • [WW-5280] - Cleanup NoParameters interfaces
  • [WW-5283] - Update Struts Archetypes
  • [WW-5285] - Upgrade commons-fileupload to ver 1.5 and add option to limit number of accepted files
  • [WW-5288] - Make excluded package exemption logic more strict
  • [WW-5290] - Refactor ConfigurationManager
  • [WW-5292] - Allow overriding of Operations classes in two filter setup and assorted clean up
  • [WW-5293] - Allow loading XML configuration from other than filesystem
  • [WW-5304] - Drop deprecated methods from ActionContext
  • [WW-5308] - Add minlength and maxlength to textarea on javatemplates plugin
  • [WW-5314] - Do not log warnings for bad user input from JakartaMultiPartRequest


  • [WW-5278] - Clean up duplicated code across ActionValidatorManagers
  • [WW-5279] - Improve readability of XmlConfigurationProvider class
  • [WW-5284] - Further clean up ActionValidatorManager implementations
  • [WW-5298] - Clean up StrutsVelocityContext
  • [WW-5299] - Clean up ActionChainResult
  • [WW-5300] - Make Dispatcher methods overridable


  • [WW-5269] - Upgrade Jackson to version 2.14.1
  • [WW-5274] - Mark Pell Multipart plugin as deprecated
  • [WW-5277] - Upgrade Freemarker to version 3.2.32

Issue Detail

Issue List

Other resources