This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch docs/update-xwork-package-paths in repository https://gitbox.apache.org/repos/asf/struts-site.git
commit 6fea613e0467582ae187d6e5d14b01775f6bf631 Author: Lukasz Lenart <[email protected]> AuthorDate: Fri Oct 17 12:22:24 2025 +0200 docs: Update XWork package paths from com/opensymphony/xwork2 to org/apache/struts2 - Update all references in markdown documentation files to reflect Apache Struts 7.x package restructuring - Fix remote_file_content URL for default.xml validator configuration - Update API documentation links for security, localization, OGNL, logging, and chaining components - Correct package paths in text references and documentation links - Aligns documentation with current Apache Struts package hierarchy Addresses package migration from XWork to Apache Struts namespace. --- source/core-developers/chaining-interceptor.md | 4 ++-- source/core-developers/localization.md | 16 ++++++++-------- source/core-developers/logging.md | 2 +- source/core-developers/ognl-cache-configuration.md | 2 +- source/core-developers/validation.md | 2 +- source/security/index.md | 4 ++-- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/source/core-developers/chaining-interceptor.md b/source/core-developers/chaining-interceptor.md index ba7e35a07..34d6d0139 100644 --- a/source/core-developers/chaining-interceptor.md +++ b/source/core-developers/chaining-interceptor.md @@ -11,10 +11,10 @@ parent: ## Description An interceptor that copies all the properties of every object in the value stack to the currently executing object, -except for any object that implements [Unchainable](/maven/struts2-core/apidocs/com/opensymphony/xwork2/Unchainable). +except for any object that implements [Unchainable](/maven/struts2-core/apidocs/org/apache/struts2/Unchainable). A collection of optional `includes` and `excludes` may be provided to control how and which parameters are copied. Only `includes` or `excludes` may be specified. Specifying both results in undefined behavior. See the JavaDocs -for [ReflectionProvider#copy(Object, Object, java.util.Map, java.util.Collection, java.util.Collection)](/maven/struts2-core/apidocs/com/opensymphony/xwork2/util/reflection/ReflectionProvider.html#copy(java.lang.Object, java.lang.Object, java.util.Map, java.util.Collection, java.util.Collection)) +for [ReflectionProvider#copy(Object, Object, java.util.Map, java.util.Collection, java.util.Collection)](/maven/struts2-core/apidocs/org/apache/struts2/util/reflection/ReflectionProvider.html#copy(java.lang.Object, java.lang.Object, java.util.Map, java.util.Collection, java.util.Collection)) for more information. > It is important to remember that this interceptor does nothing if there are > no objects already on the stack. diff --git a/source/core-developers/localization.md b/source/core-developers/localization.md index d8cbb3412..0050fae32 100644 --- a/source/core-developers/localization.md +++ b/source/core-developers/localization.md @@ -17,8 +17,8 @@ parent: The framework supports internationalization (i18n) in the following places: 1. the _UI Tags_ -2. Messages and Errors from the [ValidationAware](http://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ValidationAware) -3. Within action classes that extend [ActionSupport](http://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ActionSupport) +2. Messages and Errors from the [ValidationAware](http://struts.apache.org/maven/struts2-core/apidocs/index.html?org/apache/struts2/interceptor/ValidationAware) +3. Within action classes that extend [ActionSupport](http://struts.apache.org/maven/struts2-core/apidocs/index.html?org/apache/struts2/ActionSupport) through the `getText()` method ## Resource Bundle Search Order @@ -64,7 +64,7 @@ If you configure action as follow it will use a default class defined with `default-class-ref` in `struts-default.xml` which is `com.opensymphony.xwork2.ActionSupport`. It means you have two options here to get I18N working in that case: -- define `com/opensymphony/xwork2/ActionSupport.properties` and put messages there +- define `org/apache/struts2/ActionSupport.properties` and put messages there - point `default-class-ref` to your base class and then defined appropriated `.properties` file (corresponding to class' name or package) @@ -137,7 +137,7 @@ See [Formatting Dates and Numbers](formatting-dates-and-numbers) for more detail Struts 1 users should be familiar with the application.properties resource bundle, where you can put all the messages in the application that are going to be translated. Struts 2, though, splits the resource bundles per action or model class, and you may end up with duplicated messages in those resource bundles. A quick fix for that is to create a file -called ActionSupport.properties in com/opensymphony/xwork2 and put it on your classpath. This will only work well if +called ActionSupport.properties in org/apache/struts2 and put it on your classpath. This will only work well if all your actions subclass XWork2's ActionSupport. ## Search in default bundles first @@ -145,8 +145,8 @@ all your actions subclass XWork2's ActionSupport. Since Struts 2.6 it is possible to enable searching in default bundles first instead of performing a full class hierarchy scan and then default bundles. -By setting the below flag to `true` the default implementation of [LocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/LocalizedTextProvider.html) -(which is [StrutsLocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.html)) +By setting the below flag to `true` the default implementation of [LocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?org/apache/struts2/text/LocalizedTextProvider.html) +(which is [StrutsLocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?org/apache/struts2/text/StrutsLocalizedTextProvider.html)) will search the default bundles first. In some cases this can improve overall application performance. ```xml @@ -158,7 +158,7 @@ will search the default bundles first. In some cases this can improve overall ap ## Using only global bundles If you don't need to use the package-scan-functionality and only base on the global bundles (those provided by -the framework and via `struts.custom.i18n.resources`) you can use existing [GlobalLocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.html) +the framework and via `struts.custom.i18n.resources`) you can use existing [GlobalLocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?org/apache/struts2/text/GlobalLocalizedTextProvider.html) implementation. To use this please define the following option in your `struts.xml`: ```xml @@ -171,5 +171,5 @@ If you want to use a different logic to search for localized messages, or you wa default bundles, you must implement both those interfaces (or subclass the existing implementations). You can check a small [example app](https://github.com/apache/struts-examples/tree/main/text-provider) how to use both. Please remember that the `TextProvider` interface is implemented by the `ActionSupport` class, that's why -an extra layer - [TextProviderFactory](https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/TextProviderFactory.html) +an extra layer - [TextProviderFactory](https://struts.apache.org/maven/struts2-core/apidocs/index.html?org/apache/struts2/text/TextProviderFactory.html) - is needed. diff --git a/source/core-developers/logging.md b/source/core-developers/logging.md index 262c2258a..711872a75 100644 --- a/source/core-developers/logging.md +++ b/source/core-developers/logging.md @@ -110,7 +110,7 @@ public class JdkLogger implements Logger { } ``` -Check [the source code](http://struts.apache.org/struts-core/apidocs/com/opensymphony/xwork2/util/logging/package-summary) +Check [the source code](http://struts.apache.org/struts-core/apidocs/org/apache/struts2/util/logging/package-summary) to see more details. ## Defining which factory to use diff --git a/source/core-developers/ognl-cache-configuration.md b/source/core-developers/ognl-cache-configuration.md index c12231df4..eaf62c1e6 100644 --- a/source/core-developers/ognl-cache-configuration.md +++ b/source/core-developers/ognl-cache-configuration.md @@ -90,4 +90,4 @@ If the developer wants the standard configuration properties for the caches to f to implement equivalent methods to the ones the default implementation uses to populate those properties. Beyond the configuration properties, in certain circumstances, developers may choose to utilize certain methods to -interact with the OGNL caches. Refer to the API documentation for [OgnlUtil](https://struts.apache.org/maven/struts2-core/apidocs/com/opensymphony/xwork2/ognl/OgnlUtil.html). +interact with the OGNL caches. Refer to the API documentation for [OgnlUtil](https://struts.apache.org/maven/struts2-core/apidocs/org/apache/struts2/ognl/OgnlUtil.html). diff --git a/source/core-developers/validation.md b/source/core-developers/validation.md index 2c31f52b6..ac007ebf5 100644 --- a/source/core-developers/validation.md +++ b/source/core-developers/validation.md @@ -79,7 +79,7 @@ The following list shows the default validators included in the framework and is our own validators. {% highlight xml %} -{% remote_file_content https://raw.githubusercontent.com/apache/struts/main/core/src/main/resources/com/opensymphony/xwork2/validator/validators/default.xml %} +{% remote_file_content https://raw.githubusercontent.com/apache/struts/main/core/src/main/resources/org/apache/struts2/validator/validators/default.xml %} {% endhighlight %} > **Struts 2.1 and Prior** diff --git a/source/security/index.md b/source/security/index.md index 799d0567f..19eff51bd 100644 --- a/source/security/index.md +++ b/source/security/index.md @@ -278,8 +278,8 @@ from `save()` to `saveAction()` and leaving annotation as is to allow call this ### Accepted / Excluded Patterns As from version 2.3.20 the framework provides two new interfaces which are used to accept / exclude param names -and values - [AcceptedPatternsChecker](../maven/struts2-core/apidocs/com/opensymphony/xwork2/security/AcceptedPatternsChecker) -and [ExcludedPatternsChecker](../maven/struts2-core/apidocs/com/opensymphony/xwork2/security/ExcludedPatternsChecker) +and values - [AcceptedPatternsChecker](../maven/struts2-core/apidocs/org/apache/struts2/security/AcceptedPatternsChecker) +and [ExcludedPatternsChecker](../maven/struts2-core/apidocs/org/apache/struts2/security/ExcludedPatternsChecker) with default implementations. These two interfaces are used by the [Parameters Interceptor](../core-developers/parameters-interceptor) and [Cookie Interceptor](../core-developers/cookie-interceptor) to check if param can be accepted or must be excluded. If you were using `excludeParams` previously please compare patterns used by you with these provided by the framework in default implementation.
