These are the notes for the Struts version 7.0.0-M10 distribution.
For prior notes in this release series, see Version Notes 6.6.1
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-M10</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
&locale
have been moved toorg.apache.struts2.text
ororg.apache.struts2.locale
Improvement
- WW-5411 Delete deprecated classes and members
- WW-5448 Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.15.0
- WW-5411 General code clean up using modern language features
- WW-5411 WW-5386 Delete final deprecated code
- WW-5449 Make Velocity Tools dependency optional for Velocity plugin
- WW-5451 Fixes NPE when iterator starts with null
- WW-5454 Log warnings on startup for disabled critical security features
- WW-5453 Rename VelocityManager interface and default implementation
- WW-4062 Cache OgnlException thrown on compilation
- WW-4062 Further optimisation of OgnlException caching
- WW-5450 Uses existing Jakarta constants instead of free hand strings
- WW-5461 Extends UploadedFile with inputName field
- WW-5458 Replaces e.printStackTrace() with proper logger
- WW-5297 Fixes checking nonce of invalidated session
- WW-5470 Bump log4j2.version from 2.23.1 to 2.24.1
- WW-5469 Bump jackson.version from 2.17.2 to 2.18.0
- WW-5468 Exempt ModelDriven Actions from @StrutsParameter requirement
- WW-5471 Marks Sitemesh plugin as deprecated
- WW-5473 Fixes examining multiple HttpServletWrappers to find MultiPartRequestWrapper
- WW-5465 Renames tag parameters to attributes
- WW-5466 Boundary condition NPE possible with JakartaMultiPartRequest
- WW-5472 Removes Struts Sitemesh plugin
- WW-5209 Upgrade to Jakarta Bean Validation 3.1.0
- WW-5427 Upgrades Freemarker incompatible_improvements to version 2.3.33
- WW-3714 Deprecate and repackage common APIs part 1
- WW-3714 Deprecate and repackage common APIs part 2
- WW-3714 Deprecate and repackage common APIs part 2.5
- WW-3714 Deprecate and repackage common APIs part 3
- WW-3714 Deprecate and repackage common APIs part 4
- WW-3714 Deprecate and repackage common APIs part 5
- WW-3714 Deprecate and repackage common APIs part 6
- WW-5476 Deprecates tag's parameters as replaced with attributes
- WW-5468 Backport @StrutsParameter fix for ModelDriven Actions
- WW-3714 Moves all classes from com.opensymphony.xwork2 into org.apache.struts2
- WW-5478 Deprecate DefaultResultFactory
- WW-5480 Warn against potential templating bug
- WW-5479 Delete deprecated DefaultResultFactory
- WW-3714 Move new Result class into result package
- WW-5459 Moves Action & ActionChainResult into proper packages
- WW-5459 Move new Action class into action package
- WW-5459 Deprecate and repackage ActionChainResult
- WW-3714 Ensure correct delegation of deprecated API methods
- WW-5481 Extract text related classes into org.apache.struts2.text
- WW-5482 Extract locale related classes into org.apache.struts2.locale