DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
These are the notes for the Struts version 7.0.0 distribution.
For prior notes in this release series, see Version Notes 6.7.0
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.0.0</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
- Java 17 is used as minimal supported version
- Migrated to JakartaEE
- Stronger security options
- All classes from package
com.opensymphony.xwork(and subpackages) have been moved intoorg.apache.struts2 - Classes related to
text&localehave been moved toorg.apache.struts2.textororg.apache.struts2.locale
Please read all the previous milestones related versions notes as well:
- Version Notes 7.0.0-M10
- Version Notes 7.0.0-M9
- Version Notes 7.0.0-M8
- Version Notes 7.0.0-M7
- Version Notes 7.0.0-M6
- Version Notes 7.0.0-M3
- Version Notes 7.0.0-M2
- Version Notes 7.0.0-M1
Bug
- [WW-5110] - java.lang.ClassCastException: org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter cannot be cast to jakarta.servlet.Filter
- [WW-5390] - Fix missing assembly packages when preparing a new release
- [WW-5396] - Javatemplates s:file shows server/file location
- [WW-5423] - Query Parameters in Multipart Requests not working in v7 M6
- [WW-5438] - Wrong scope on weld dependencies
- [WW-5440] - Fix OGNL allowlist compatibility with Convention plugin
- [WW-5450] - ServletDispatcherResult Forwarding GET Instead of FORWARD
- [WW-5457] - Struts Home Page Linked to old version of Struts 7
- [WW-5461] - Multiple uploaded files cannot be processed individually
- [WW-5463] - SiteMesh 3.2.1 does not resolve jsp path after Struts Filter
- [WW-5464] - Struts Wildcard actions are failing from v7.0.0-M7
- [WW-5468] - ModelDriven is not compatible with @StrutsParameter
- [WW-5473] - ActionFileUploadInterceptor doesn't support multiple HttpServletRequestWrapper
- [WW-5486] - Parameters which are added via ServletDispatcherResult aren't availabe in #parameters
New Feature
- [WW-5141] - Support for JEE 9+
- [WW-5372] - JEE9 Support(Jakarta namespacing) for struts2 core
- [WW-5481] - Move text related classes into org.apache.struts2.text
- [WW-5482] - Move locale related classes into dedicated packages
Improvement
- [WW-3499] - AnnotationParameterFilterIntereptor should support deep OGNL
- [WW-4807] - Allow define custom Voters to be used with SecurityMemberAccess
- [WW-5251] - Remove deprecated interfaces used with ServletConfigInterceptor
- [WW-5306] - Remove the Portlet plugin
- [WW-5335] - Adjusts Jenkins & Github build files to use JDK17
- [WW-5353] - Implement stronger security defaults in Struts 7.0
- [WW-5388] - Upgrade Commons Fileupload to FileUpload Jakarta Servlet 6
- [WW-5405] - Renames master branch to main branch
- [WW-5428] - Allowlist capability should resolve Hibernate proxies when disableProxyObjects is not set
- [WW-5429] - Log parameter annotation issues at ERROR level when in DevMode
- [WW-5433] - Remove deprecated constants in FreemarkerManager
- [WW-5439] - Fix and clean up DevMode excluded class configuration
- [WW-5449] - Make Velocity Tools dependency optional for Velocity plugin
- [WW-5453] - Rename VelocityManager interface and default implementation
- [WW-5454] - Log warnings on startup for disabled critical security features
- [WW-5458] - Address e.printStackTrace
- [WW-5459] - Move Action and ActionChainResult to proper packages
- [WW-5465] - Rename tag's parameters into attributes
- [WW-5472] - Remove deprecated Struts Sitemesh plugin
- [WW-5485] - Remove deprecated plugins
Task
- [WW-3714] - Rename org.opensymphony.xwork2 to org.apache.struts2.xwork2
- [WW-5384] - Upgrade Log4j to version 2.22.1
- [WW-5386] - Remove deprecated FileUploadInterceptor
- [WW-5411] - Delete deprecated classes and members
Dependency
- [WW-5209] - Upgrade to Jakarta Bean Validation 3.0
- [WW-5393] - Update caffeine to 3.1.8
- [WW-5427] - Enable incompatible_improvements in Freemaker