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

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

Maven users

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>7.1.1</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>

Breaking changes

  • A new mechanism has been introduced how to configure CSP Nonce, see WW-5504.
  • Support for uploading empty files has been removed, see WW-5366.
  • Improved excluded name patterns which should be more strict, see WW-5501.

Bug

  • [WW-5376] - struts2-bom should not pull in non-struts dependencies from struts2-parent
  • [WW-5452] - Freemarker error with empty boolean parameter
  • [WW-5504] - CSP Nonce changes within a page
  • [WW-5506] - File upload not working with Tomcat 11
  • [WW-5523] - StrutsPrepareAndExecuteFilter, wrappedRequest or request when no action mapping is found?
  • [WW-5524] - Dependency injection not working in custom StrutsTypeConverter(s)
  • [WW-5527] - Sync javatemplates checkboxlist with main ftl version
  • [WW-5528] - Multipart uploads with invalid characters in file or field name are silently dropped
  • [WW-5534] - Actions with Spring's @Transactional and ModelDriven
  • [WW-5546] - NPE in AbstractFileUploadInterceptor
  • [WW-5548] - Request attribute jakarta.servlet.forward.servlet_path incorrectly set by ServletDispatcherResult breaking sitemesh integration
  • [WW-5554] - Struts Annotations JDK version warning with TagAnnotationProcessor
  • [WW-5558] - Support package org.apache.struts2 for interceptors and result-types

New Feature

  • [WW-5455] - Implement a new plugin to support Jasper Reports 7
  • [WW-5530] - LocalDate and LocalTime Not Working in DateConverter
  • [WW-5538] - Add OffsetDateTime support to DateConverter

Improvement

  • [WW-4356] - Implement new Sitemesh plugin based on Sitemesh3
  • [WW-5366] - Remove support for uploading empty files
  • [WW-5501] - Exclude malicious names
  • [WW-5502] - Remove deprecated sanitizeNewlines
  • [WW-5532] - Upgrade and align various dependencies
  • [WW-5533] - Add compilation support for Jakarta EE 11
  • [WW-5544] - Mark org.apache.struts2.util.reflection.ReflectionContextFactory as deprecated
  • [WW-5573] - Avoid false positive warning if file doesn't exist

Dependency

  • [WW-5509] - Bump jakarta.servlet.jsp:jakarta.servlet.jsp-api from 3.1.0 to 4.0.0
  • [WW-5547] - Bump com.github.ben-manes.caffeine:caffeine from 3.1.8 to 3.2.0
  • [WW-5550] - Bump asm.version from 9.7.1 to 9.8
  • [WW-5551] - Bump commons-beanutils:commons-beanutils from 1.9.4 to 1.11.0
  • [WW-5552] - Bump weld.version from 5.1.2.Final to 6.0.2.Final
  • [WW-5553] - Bump com.fasterxml.jackson:jackson-bom from 2.18.3 to 2.19.1
  • [WW-5557] - Bump org.apache.commons:commons-lang3 from 3.17.0 to 3.18.0
  • [WW-5561] - Bump org.apache.commons:commons-text from 1.13.1 to 1.14.0
  • [WW-5565] - Bump org.apache.commons:commons-collections4 from 4.4 to 4.5.0
  • [WW-5566] - Bump commons-validator:commons-validator from 1.9.0 to 1.10.0
  • [WW-5567] - Bump log4j2.version from 2.24.1 to 2.25.1
  • [WW-5569] - Bump org.apache.commons:commons-compress from 1.27.1 to 1.28.0
  • [WW-5572] - Bump org.mockito:mockito-core from 5.15.2 to 5.20.0
  • [WW-5574] - Bump commons-logging to version 1.3.5
  • [WW-5575] - Bump commons-io to version 2.20.0
  • [WW-5577] - Bump org.apache.commons:commons-lang3 from 3.18.0 to 3.19.0

Issue Detail

Issue List

Other resources