Latest in branch 7.1
7.1.1
Released 01 Oct 2025
(8 months ago)
SoftwareApache Struts
Version7.1
RequirementJava 17,
Jakarta EE 10
Initial release7.1.0
24 Sep 2025
(8 months ago)
Latest release7.1.1
01 Oct 2025
(8 months ago)
Support statusYes
Release noteshttps://github.com/apache/struts/releases/tag/STRUTS_7.1.1
Source codehttps://github.com/apache/struts/tree/STRUTS_7.1.1
Documentationhttps://javadoc.io/doc/org.apache.struts/struts2-core/7.1.1/index.html
Downloadhttps://mvnrepository.com/artifact/org.apache.struts/struts2-core/7.1.1
Apache Struts 7.1 ReleasesView full list

What Is New in Apache Struts 7.1

This release focuses on core framework upgrades and dependency refreshes to keep the platform modern. Here's a quick summary of the key changes.

Category Key Updates
New Features Support for Jakarta EE 10, Jakarta Servlet 6.0, and Jakarta Pages 3.1.
Improvements Updated dependencies including Log4j 2, Tiles 3, and JUnit 5.
Deprecations Removal of deprecated classes and methods for a cleaner API.
Bug Fixes Various fixes for issues identified since the previous release.

What are the major dependency upgrades?

The most significant change is the jump to the latest Jakarta EE specifications. This moves the framework forward from Java EE and Jakarta EE 9.

You now need a server that supports Jakarta EE 10, which includes Jakarta Servlet 6.0 and Jakarta Pages 3.1. In practice, this means your application server or servlet container must be compatible with these new specs, like the latest versions of Tomcat.

Other core dependencies were also bumped, including Log4j to version 2.22.1 and Apache Tiles to version 3.0.10, ensuring you have the latest features and fixes from those projects.

What deprecated code was removed?

Version 7.1 cleans house by removing several classes and methods that were previously marked as deprecated. This is a breaking change if you were still using them.

For example, the org.apache.struts.mock.MockServletContext class and the MockHttpServletResponse#getRedirectUrl method are now gone. You'll need to update your tests and code to use modern alternatives.

This cleanup is crucial for maintaining a streamlined and maintainable codebase. It forces the adoption of newer, more standard practices that are better supported.

How does the Log4j update affect my application?

The update to Log4j 2.22.1 is primarily about maintenance and stability. It incorporates all the fixes from the Log4j 2.x branch.

You don't get new Struts features from this, but your logging subsystem will be on a stable, patched version. Just ensure your application's Log4j configuration is compatible with the 2.22.x series if you've customized it.

FAQ

Is Apache Struts 7.1 backwards compatible with my existing Struts 6.x application?
No, it is not. The move to Jakarta EE 10 and the removal of deprecated APIs are breaking changes. You will need to update your application's dependencies and potentially refactor code that used the removed classes and methods.

What is the minimum Java version required for Struts 7.1?
You need Java 11 or later to run Struts 7.1. This aligns with the requirements of the underlying Jakarta EE 10 specifications.

Can I still use JSPs with this new version?
Yes, but they must be Jakarta Pages (JSP) 3.1, not the older JavaServer Pages. The namespace and TLDs have changed from javax.servlet.jsp to jakarta.servlet.jsp.

Why was the MockServletContext class removed?
It was deprecated in a previous release. The removal encourages developers to use more robust and standard testing utilities provided by modern testing frameworks or the servlet container itself, rather than relying on Struts-specific mocks.

Where can I find the full list of changes?
The complete release notes with all details and issue links are available on the Apache Struts confluence page. Always check there for the most authoritative information.

Releases In Branch 7.1

VersionRelease date
7.1.101 Oct 2025
(8 months ago)
7.1.024 Sep 2025
(8 months ago)