This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch feature/WW-5459-restructure
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 2aeaf51d9c5b73921ac4c195cbca654e37748bc7
Author: Lukasz Lenart <lukaszlen...@apache.org>
AuthorDate: Sat Nov 2 14:19:54 2024 +0100

    WW-5459 Moves Action interface into org.apache.struts2.action package
---
 .../main/java/org/apache/struts2/showcase/action/JSPEvalAction.java | 2 +-
 .../main/java/org/apache/struts2/showcase/ajax/AjaxTestAction.java  | 2 +-
 .../apache/struts2/showcase/chat/ChatAuthenticationInterceptor.java | 2 +-
 .../main/java/org/apache/struts2/showcase/chat/ChatInterceptor.java | 2 +-
 .../apache/struts2/showcase/filedownload/FileDownloadAction.java    | 2 +-
 core/src/main/java/org/apache/struts2/ActionContext.java            | 1 +
 core/src/main/java/org/apache/struts2/ActionInvocation.java         | 1 +
 core/src/main/java/org/apache/struts2/ActionSupport.java            | 1 +
 core/src/main/java/org/apache/struts2/DefaultActionInvocation.java  | 1 +
 core/src/main/java/org/apache/struts2/Result.java                   | 2 ++
 core/src/main/java/org/apache/struts2/{ => action}/Action.java      | 2 +-
 .../struts2/config/providers/XmlDocConfigurationProvider.java       | 2 +-
 .../org/apache/struts2/interceptor/DefaultWorkflowInterceptor.java  | 2 +-
 .../org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java   | 3 +--
 core/src/main/java/org/apache/struts2/interceptor/Interceptor.java  | 5 +++--
 .../main/java/org/apache/struts2/interceptor/PreResultListener.java | 5 +++--
 .../org/apache/struts2/interceptor/annotations/InputConfig.java     | 2 +-
 .../org/apache/struts2/interceptor/parameter/StrutsParameter.java   | 4 +++-
 .../src/main/java/org/apache/struts2/util/AppendIteratorFilter.java | 2 +-
 core/src/main/java/org/apache/struts2/util/IteratorGenerator.java   | 2 +-
 core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java | 2 +-
 core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java  | 2 +-
 .../src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java | 2 +-
 core/src/test/java/org/apache/struts2/ActionNestingTest.java        | 1 +
 core/src/test/java/org/apache/struts2/ActionSupportTest.java        | 1 +
 core/src/test/java/org/apache/struts2/ExternalReferenceAction.java  | 2 ++
 core/src/test/java/org/apache/struts2/NestedAction.java             | 1 +
 core/src/test/java/org/apache/struts2/SimpleFooAction.java          | 2 ++
 core/src/test/java/org/apache/struts2/TestAction.java               | 3 +--
 .../src/test/java/org/apache/struts2/TestConfigurationProvider.java | 5 +----
 core/src/test/java/org/apache/struts2/components/FormTest.java      | 2 +-
 .../config/providers/ConfigurationProviderOgnlAllowlistTest.java    | 6 +++---
 .../apache/struts2/config/providers/MockConfigurationProvider.java  | 2 +-
 .../apache/struts2/config/providers/NoNoArgsConstructorAction.java  | 2 +-
 .../apache/struts2/config/providers/PrivateConstructorAction.java   | 2 +-
 .../config/providers/XmlConfigurationProviderResultsTest.java       | 2 +-
 .../java/org/apache/struts2/conversion/ConversionTestAction.java    | 2 +-
 .../java/org/apache/struts2/interceptor/AliasInterceptorTest.java   | 2 +-
 .../org/apache/struts2/interceptor/ChainingInterceptorTest.java     | 2 +-
 .../struts2/interceptor/ChainingInterceptorWithConfigTest.java      | 2 +-
 .../apache/struts2/interceptor/ConversionErrorInterceptorTest.java  | 2 +-
 .../java/org/apache/struts2/interceptor/CookieInterceptorTest.java  | 2 +-
 .../apache/struts2/interceptor/DefaultWorkflowInterceptorTest.java  | 2 +-
 .../apache/struts2/interceptor/ExceptionMappingInterceptorTest.java | 2 +-
 .../org/apache/struts2/interceptor/ExecuteAndWaitDelayAction.java   | 2 +-
 .../apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java   | 2 +-
 .../java/org/apache/struts2/interceptor/I18nInterceptorTest.java    | 2 +-
 .../org/apache/struts2/interceptor/MessageStoreInterceptorTest.java | 3 +--
 .../struts2/interceptor/MessageStorePreResultListenerTest.java      | 2 +-
 .../org/apache/struts2/interceptor/ModelDrivenInterceptorTest.java  | 2 +-
 .../java/org/apache/struts2/interceptor/PreResultListenerTest.java  | 2 +-
 .../java/org/apache/struts2/interceptor/PrepareInterceptorTest.java | 2 +-
 .../struts2/interceptor/ScopedModelDrivenInterceptorTest.java       | 2 +-
 .../apache/struts2/interceptor/ServletConfigInterceptorTest.java    | 2 +-
 .../struts2/interceptor/StrutsConversionErrorInterceptorTest.java   | 2 +-
 .../java/org/apache/struts2/interceptor/TokenInterceptorTest.java   | 2 +-
 .../struts2/interceptor/TokenSessionStoreInterceptorTest.java       | 2 +-
 .../org/apache/struts2/interceptor/ValidationErrorAwareTest.java    | 2 +-
 .../ValidationInterceptorPrefixMethodInvocationTest.java            | 2 +-
 .../org/apache/struts2/interceptor/annotations/AnnotatedAction.java | 2 +-
 .../interceptor/annotations/AnnotationWorkflowInterceptorTest.java  | 2 +-
 .../struts2/interceptor/annotations/ShortcircuitedAction.java       | 2 +-
 .../struts2/interceptor/parameter/ParametersInterceptorTest.java    | 2 +-
 core/src/test/java/org/apache/struts2/result/StreamResultTest.java  | 2 +-
 core/src/test/java/org/apache/struts2/util/MyBeanAction.java        | 2 +-
 .../org/apache/struts2/util/StrutsLocalizedTextProviderTest.java    | 2 +-
 .../struts2/validator/AnnotationActionValidatorManagerTest.java     | 2 +-
 .../java/org/apache/struts2/validator/ExpressionValidatorTest.java  | 2 +-
 .../org/apache/struts2/validator/ModelDrivenValidationTest.java     | 2 +-
 .../test/java/org/apache/struts2/validator/StringValidatorTest.java | 2 +-
 .../apache/struts2/validator/VisitorFieldValidatorModelTest.java    | 2 +-
 .../org/apache/struts2/validator/VisitorFieldValidatorTest.java     | 2 +-
 .../src/test/java/org/apache/struts2/views/jsp/AbstractTagTest.java | 2 +-
 core/src/test/java/org/apache/struts2/views/jsp/ActionTagTest.java  | 2 +-
 .../java/org/apache/struts2/views/jsp/AppendIteratorTagTest.java    | 2 +-
 .../java/org/apache/struts2/views/jsp/IteratorGeneratorTagTest.java | 2 +-
 .../java/org/apache/struts2/views/jsp/MergeIteratorTagTest.java     | 2 +-
 .../test/java/org/apache/struts2/views/jsp/SortIteratorTagTest.java | 2 +-
 .../java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java    | 2 +-
 core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java    | 2 +-
 .../java/org/apache/struts2/views/jsp/ui/ActionErrorTagTest.java    | 2 +-
 .../java/org/apache/struts2/views/jsp/ui/ActionMessageTagTest.java  | 2 +-
 .../java/org/apache/struts2/views/jsp/ui/FieldErrorTagTest.java     | 2 +-
 core/src/test/java/org/apache/struts2/views/jsp/ui/FormTagTest.java | 2 +-
 .../test/java/org/apache/struts2/views/jsp/ui/LocaleTestAction.java | 2 +-
 .../java/org/apache/struts2/views/jsp/ui/UpDownSelectTagTest.java   | 2 +-
 .../org/apache/struts2/convention/ConventionUnknownHandler.java     | 1 +
 .../java/org/apache/struts2/convention/DefaultResultMapBuilder.java | 2 +-
 .../apache/struts2/convention/PackageBasedActionConfigBuilder.java  | 4 ++--
 .../main/java/org/apache/struts2/convention/annotation/Result.java  | 2 +-
 .../src/test/java/org/apache/struts2/convention/actions/Skip.java   | 2 +-
 .../actions/defaultinterceptor/SingleActionNameAction2.java         | 2 +-
 .../test/java/org/apache/struts2/convention/actions/idx/Index.java  | 2 +-
 .../java/org/apache/struts2/convention/actions/idx/idx2/Index.java  | 2 +-
 .../test/java/org/apache/struts2/convention/actions/skip/Index.java | 2 +-
 .../json/src/main/java/org/apache/struts2/json/JSONInterceptor.java | 2 +-
 .../java/org/apache/struts2/json/JSONValidationInterceptor.java     | 2 +-
 .../java/org/apache/struts2/json/JSONValidationInterceptorTest.java | 2 +-
 plugins/json/src/test/java/org/apache/struts2/json/TestAction.java  | 2 +-
 .../org/apache/struts2/junit/StrutsSpringJUnit4TestCaseTest.java    | 2 +-
 .../src/test/java/org/apache/struts2/junit/StrutsTestCaseTest.java  | 2 +-
 .../src/main/java/org/apache/struts2/rest/RestActionInvocation.java | 1 +
 .../main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java  | 2 +-
 .../java/org/apache/struts2/rest/ContentTypeInterceptorTest.java    | 2 +-
 .../test/java/org/apache/struts2/spring/ActionsFromSpringTest.java  | 2 +-
 .../src/test/java/org/apache/struts2/spring/ExecuteInterceptor.java | 2 +-
 .../java/org/apache/struts2/spring/SpringObjectFactoryTest.java     | 2 +-
 .../test/java/org/apache/struts2/result/xslt/XSLTResultTest.java    | 2 +-
 108 files changed, 120 insertions(+), 107 deletions(-)

diff --git 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java
 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java
index 8e0e71a9a..43e15e013 100644
--- 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java
+++ 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.showcase.action;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.interceptor.annotations.After;
 import org.apache.struts2.ServletActionContext;
 import org.apache.struts2.interceptor.parameter.StrutsParameter;
diff --git 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/ajax/AjaxTestAction.java
 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/ajax/AjaxTestAction.java
index 02cd9f1f8..ecbf9c0db 100644
--- 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/ajax/AjaxTestAction.java
+++ 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/ajax/AjaxTestAction.java
@@ -20,7 +20,7 @@
  */
 package org.apache.struts2.showcase.ajax;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.interceptor.parameter.StrutsParameter;
 
 import java.io.Serializable;
diff --git 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatAuthenticationInterceptor.java
 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatAuthenticationInterceptor.java
index ad352ff52..fb775075b 100644
--- 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatAuthenticationInterceptor.java
+++ 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatAuthenticationInterceptor.java
@@ -21,7 +21,7 @@
 package org.apache.struts2.showcase.chat;
 
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.interceptor.AbstractInterceptor;
diff --git 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatInterceptor.java
 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatInterceptor.java
index 52678d288..e5b136f34 100644
--- 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatInterceptor.java
+++ 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/chat/ChatInterceptor.java
@@ -20,7 +20,7 @@
  */
 package org.apache.struts2.showcase.chat;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.interceptor.AbstractInterceptor;
diff --git 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/filedownload/FileDownloadAction.java
 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/filedownload/FileDownloadAction.java
index da35e7bb8..4c667b644 100644
--- 
a/apps/showcase/src/main/java/org/apache/struts2/showcase/filedownload/FileDownloadAction.java
+++ 
b/apps/showcase/src/main/java/org/apache/struts2/showcase/filedownload/FileDownloadAction.java
@@ -20,7 +20,7 @@
  */
 package org.apache.struts2.showcase.filedownload;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ServletActionContext;
 import org.apache.struts2.interceptor.parameter.StrutsParameter;
 
diff --git a/core/src/main/java/org/apache/struts2/ActionContext.java 
b/core/src/main/java/org/apache/struts2/ActionContext.java
index 2f023bc51..febedd04f 100644
--- a/core/src/main/java/org/apache/struts2/ActionContext.java
+++ b/core/src/main/java/org/apache/struts2/ActionContext.java
@@ -22,6 +22,7 @@ import jakarta.servlet.ServletContext;
 import jakarta.servlet.http.HttpServletRequest;
 import jakarta.servlet.http.HttpServletResponse;
 import jakarta.servlet.jsp.PageContext;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.conversion.impl.ConversionData;
 import org.apache.struts2.dispatcher.HttpParameters;
 import org.apache.struts2.dispatcher.mapper.ActionMapping;
diff --git a/core/src/main/java/org/apache/struts2/ActionInvocation.java 
b/core/src/main/java/org/apache/struts2/ActionInvocation.java
index 71e2c8330..16ad109e6 100644
--- a/core/src/main/java/org/apache/struts2/ActionInvocation.java
+++ b/core/src/main/java/org/apache/struts2/ActionInvocation.java
@@ -18,6 +18,7 @@
  */
 package org.apache.struts2;
 
+import org.apache.struts2.action.Action;
 import org.apache.struts2.interceptor.PreResultListener;
 import org.apache.struts2.util.ValueStack;
 
diff --git a/core/src/main/java/org/apache/struts2/ActionSupport.java 
b/core/src/main/java/org/apache/struts2/ActionSupport.java
index 92ce264fe..f5d58b091 100644
--- a/core/src/main/java/org/apache/struts2/ActionSupport.java
+++ b/core/src/main/java/org/apache/struts2/ActionSupport.java
@@ -20,6 +20,7 @@ package org.apache.struts2;
 
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.conversion.impl.ConversionData;
 import org.apache.struts2.inject.Container;
 import org.apache.struts2.inject.Inject;
diff --git a/core/src/main/java/org/apache/struts2/DefaultActionInvocation.java 
b/core/src/main/java/org/apache/struts2/DefaultActionInvocation.java
index 079b7e17f..3770f47bb 100644
--- a/core/src/main/java/org/apache/struts2/DefaultActionInvocation.java
+++ b/core/src/main/java/org/apache/struts2/DefaultActionInvocation.java
@@ -22,6 +22,7 @@ import ognl.MethodFailedException;
 import ognl.NoSuchPropertyException;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.config.ConfigurationException;
 import org.apache.struts2.config.entities.ActionConfig;
 import org.apache.struts2.config.entities.InterceptorMapping;
diff --git a/core/src/main/java/org/apache/struts2/Result.java 
b/core/src/main/java/org/apache/struts2/Result.java
index 407994eab..040b8f23f 100644
--- a/core/src/main/java/org/apache/struts2/Result.java
+++ b/core/src/main/java/org/apache/struts2/Result.java
@@ -18,6 +18,8 @@
  */
 package org.apache.struts2;
 
+import org.apache.struts2.action.Action;
+
 import java.io.Serializable;
 
 /**
diff --git a/core/src/main/java/org/apache/struts2/Action.java 
b/core/src/main/java/org/apache/struts2/action/Action.java
similarity index 98%
rename from core/src/main/java/org/apache/struts2/Action.java
rename to core/src/main/java/org/apache/struts2/action/Action.java
index cc3fb83ac..11064054b 100644
--- a/core/src/main/java/org/apache/struts2/Action.java
+++ b/core/src/main/java/org/apache/struts2/action/Action.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.struts2;
+package org.apache.struts2.action;
 
 /**
  * All actions <b>may</b> implement this interface, which exposes the 
<code>execute()</code> method.
diff --git 
a/core/src/main/java/org/apache/struts2/config/providers/XmlDocConfigurationProvider.java
 
b/core/src/main/java/org/apache/struts2/config/providers/XmlDocConfigurationProvider.java
index 2ae13bcce..da44b71f6 100644
--- 
a/core/src/main/java/org/apache/struts2/config/providers/XmlDocConfigurationProvider.java
+++ 
b/core/src/main/java/org/apache/struts2/config/providers/XmlDocConfigurationProvider.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.config.providers;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ObjectFactory;
 import org.apache.struts2.config.BeanSelectionProvider;
 import org.apache.struts2.config.Configuration;
diff --git 
a/core/src/main/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptor.java
 
b/core/src/main/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptor.java
index 90f7f70a8..8419c992b 100644
--- 
a/core/src/main/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptor.java
+++ 
b/core/src/main/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptor.java
@@ -22,7 +22,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.reflect.MethodUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.interceptor.annotations.InputConfig;
 
diff --git 
a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
 
b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
index 54fa9c113..5ab03f15a 100644
--- 
a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
+++ 
b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
@@ -18,14 +18,13 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.config.entities.ResultConfig;
 import org.apache.struts2.inject.Container;
 import org.apache.struts2.inject.Inject;
-import org.apache.struts2.interceptor.MethodFilterInterceptor;
 import jakarta.servlet.http.HttpSession;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
diff --git a/core/src/main/java/org/apache/struts2/interceptor/Interceptor.java 
b/core/src/main/java/org/apache/struts2/interceptor/Interceptor.java
index 58beef284..c277c74cc 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/Interceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/Interceptor.java
@@ -19,6 +19,7 @@
 package org.apache.struts2.interceptor;
 
 import org.apache.struts2.ActionInvocation;
+import org.apache.struts2.action.Action;
 
 import java.io.Serializable;
 
@@ -42,7 +43,7 @@ import java.io.Serializable;
  * <p>
  * Interceptors <b>must</b> be stateless and not assume that a new instance 
will be created for each request or Action.
  * Interceptors may choose to either short-circuit the {@link 
ActionInvocation} execution and return a return code
- * (such as {@link org.apache.struts2.Action#SUCCESS}), or it may choose to do 
some processing before
+ * (such as {@link Action#SUCCESS}), or it may choose to do some processing 
before
  * and/or after delegating the rest of the procesing using {@link 
ActionInvocation#invoke()}.
  * </p>
  * <!-- END SNIPPET: introduction -->
@@ -215,7 +216,7 @@ public interface Interceptor extends Serializable {
      *
      * @param invocation the action invocation
      * @return the return code, either returned from {@link 
ActionInvocation#invoke()}, or from the interceptor itself.
-     * @throws Exception any system-level error, as defined in {@link 
org.apache.struts2.Action#execute()}.
+     * @throws Exception any system-level error, as defined in {@link 
Action#execute()}.
      */
     String intercept(ActionInvocation invocation) throws Exception;
 
diff --git 
a/core/src/main/java/org/apache/struts2/interceptor/PreResultListener.java 
b/core/src/main/java/org/apache/struts2/interceptor/PreResultListener.java
index 69745b925..315cedf5b 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/PreResultListener.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/PreResultListener.java
@@ -19,10 +19,11 @@
 package org.apache.struts2.interceptor;
 
 import org.apache.struts2.ActionInvocation;
+import org.apache.struts2.action.Action;
 
 /**
  * PreResultListeners may be registered with an {@link ActionInvocation} to 
get a callback after the
- * {@link org.apache.struts2.Action} has been executed but before the {@link 
org.apache.struts2.Result}
+ * {@link Action} has been executed but before the {@link 
org.apache.struts2.Result}
  * is executed.
  *
  * @author Jason Carreira
@@ -30,7 +31,7 @@ import org.apache.struts2.ActionInvocation;
 public interface PreResultListener {
 
     /**
-     * This callback method will be called after the {@link 
org.apache.struts2.Action} execution and
+     * This callback method will be called after the {@link Action} execution 
and
      * before the {@link org.apache.struts2.Result} execution.
      *
      * @param invocation  the action invocation
diff --git 
a/core/src/main/java/org/apache/struts2/interceptor/annotations/InputConfig.java
 
b/core/src/main/java/org/apache/struts2/interceptor/annotations/InputConfig.java
index 695f4f750..8eaf163d8 100644
--- 
a/core/src/main/java/org/apache/struts2/interceptor/annotations/InputConfig.java
+++ 
b/core/src/main/java/org/apache/struts2/interceptor/annotations/InputConfig.java
@@ -23,7 +23,7 @@ import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 /**
  * <!-- START SNIPPET: description -->
diff --git 
a/core/src/main/java/org/apache/struts2/interceptor/parameter/StrutsParameter.java
 
b/core/src/main/java/org/apache/struts2/interceptor/parameter/StrutsParameter.java
index 99de060ff..1fbafa3c7 100644
--- 
a/core/src/main/java/org/apache/struts2/interceptor/parameter/StrutsParameter.java
+++ 
b/core/src/main/java/org/apache/struts2/interceptor/parameter/StrutsParameter.java
@@ -18,13 +18,15 @@
  */
 package org.apache.struts2.interceptor.parameter;
 
+import org.apache.struts2.action.Action;
+
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
 /**
- * Used to annotate public getter/setter methods or fields on {@link 
org.apache.struts2.Action} classes that are
+ * Used to annotate public getter/setter methods or fields on {@link Action} 
classes that are
  * intended for parameter injection by the {@link ParametersInterceptor}.
  *
  * @since 6.4.0
diff --git 
a/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java 
b/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java
index fafbadb75..c10d102ef 100644
--- a/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java
+++ b/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.util;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java 
b/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java
index b193d6ad1..4aa061951 100644
--- a/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java
+++ b/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.util;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
diff --git 
a/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java 
b/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java
index 0f00ec56b..fefeb4a26 100644
--- a/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java
+++ b/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.util;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java 
b/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java
index e126c5c0d..e22517b4a 100644
--- a/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java
+++ b/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.util;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
diff --git 
a/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java 
b/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java
index 41564409e..662ea0294 100644
--- a/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java
+++ b/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.util;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
diff --git a/core/src/test/java/org/apache/struts2/ActionNestingTest.java 
b/core/src/test/java/org/apache/struts2/ActionNestingTest.java
index f925eed35..a64260d73 100644
--- a/core/src/test/java/org/apache/struts2/ActionNestingTest.java
+++ b/core/src/test/java/org/apache/struts2/ActionNestingTest.java
@@ -18,6 +18,7 @@
  */
 package org.apache.struts2;
 
+import org.apache.struts2.action.Action;
 import org.apache.struts2.config.Configuration;
 import org.apache.struts2.config.ConfigurationProvider;
 import org.apache.struts2.config.entities.ActionConfig;
diff --git a/core/src/test/java/org/apache/struts2/ActionSupportTest.java 
b/core/src/test/java/org/apache/struts2/ActionSupportTest.java
index 79420172c..e42271dea 100644
--- a/core/src/test/java/org/apache/struts2/ActionSupportTest.java
+++ b/core/src/test/java/org/apache/struts2/ActionSupportTest.java
@@ -18,6 +18,7 @@
  */
 package org.apache.struts2;
 
+import org.apache.struts2.action.Action;
 import org.apache.struts2.conversion.impl.ConversionData;
 import org.apache.struts2.util.ValueStack;
 import org.apache.struts2.interceptor.parameter.StrutsParameter;
diff --git a/core/src/test/java/org/apache/struts2/ExternalReferenceAction.java 
b/core/src/test/java/org/apache/struts2/ExternalReferenceAction.java
index 469f97538..8c44aeb41 100644
--- a/core/src/test/java/org/apache/struts2/ExternalReferenceAction.java
+++ b/core/src/test/java/org/apache/struts2/ExternalReferenceAction.java
@@ -18,6 +18,8 @@
  */
 package org.apache.struts2;
 
+import org.apache.struts2.action.Action;
+
 public class ExternalReferenceAction implements Action {
 
     private Foo foo;
diff --git a/core/src/test/java/org/apache/struts2/NestedAction.java 
b/core/src/test/java/org/apache/struts2/NestedAction.java
index 75f8783df..28c9ea224 100644
--- a/core/src/test/java/org/apache/struts2/NestedAction.java
+++ b/core/src/test/java/org/apache/struts2/NestedAction.java
@@ -18,6 +18,7 @@
  */
 package org.apache.struts2;
 
+import org.apache.struts2.action.Action;
 import org.apache.struts2.util.ValueStack;
 import org.junit.Assert;
 
diff --git a/core/src/test/java/org/apache/struts2/SimpleFooAction.java 
b/core/src/test/java/org/apache/struts2/SimpleFooAction.java
index 9c0804518..ff3c35801 100644
--- a/core/src/test/java/org/apache/struts2/SimpleFooAction.java
+++ b/core/src/test/java/org/apache/struts2/SimpleFooAction.java
@@ -19,6 +19,8 @@
 package org.apache.struts2;
 
 
+import org.apache.struts2.action.Action;
+
 /**
  * DOCUMENT ME!
  *
diff --git a/core/src/test/java/org/apache/struts2/TestAction.java 
b/core/src/test/java/org/apache/struts2/TestAction.java
index ebcd7f18d..d8f5b0d42 100644
--- a/core/src/test/java/org/apache/struts2/TestAction.java
+++ b/core/src/test/java/org/apache/struts2/TestAction.java
@@ -18,8 +18,7 @@
  */
 package org.apache.struts2;
 
-import org.apache.struts2.Action;
-import org.apache.struts2.ActionSupport;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.util.ValueStack;
 import org.apache.struts2.validator.annotations.RequiredFieldValidator;
 import org.apache.struts2.validator.annotations.RequiredStringValidator;
diff --git 
a/core/src/test/java/org/apache/struts2/TestConfigurationProvider.java 
b/core/src/test/java/org/apache/struts2/TestConfigurationProvider.java
index a401d3ae4..34d1ecd5b 100644
--- a/core/src/test/java/org/apache/struts2/TestConfigurationProvider.java
+++ b/core/src/test/java/org/apache/struts2/TestConfigurationProvider.java
@@ -18,10 +18,7 @@
  */
 package org.apache.struts2;
 
-import org.apache.struts2.Action;
-import org.apache.struts2.ActionProxyFactory;
-import org.apache.struts2.DefaultActionProxyFactory;
-import org.apache.struts2.ObjectFactory;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.config.Configuration;
 import org.apache.struts2.config.ConfigurationException;
 import org.apache.struts2.config.ConfigurationProvider;
diff --git a/core/src/test/java/org/apache/struts2/components/FormTest.java 
b/core/src/test/java/org/apache/struts2/components/FormTest.java
index 69a213706..5f3ed682f 100644
--- a/core/src/test/java/org/apache/struts2/components/FormTest.java
+++ b/core/src/test/java/org/apache/struts2/components/FormTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.components;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/config/providers/ConfigurationProviderOgnlAllowlistTest.java
 
b/core/src/test/java/org/apache/struts2/config/providers/ConfigurationProviderOgnlAllowlistTest.java
index 104f2093e..359969985 100644
--- 
a/core/src/test/java/org/apache/struts2/config/providers/ConfigurationProviderOgnlAllowlistTest.java
+++ 
b/core/src/test/java/org/apache/struts2/config/providers/ConfigurationProviderOgnlAllowlistTest.java
@@ -58,7 +58,7 @@ public class ConfigurationProviderOgnlAllowlistTest extends 
XWorkJUnit4TestCase
                 Class.forName("java.lang.Object"),
                 Class.forName("org.apache.struts2.Validateable"),
                 Class.forName("org.apache.struts2.mock.MockInterceptor"),
-                Class.forName("org.apache.struts2.Action"),
+                Class.forName("org.apache.struts2.action.Action"),
                 
Class.forName("org.apache.struts2.interceptor.AbstractInterceptor"),
                 Class.forName("org.apache.struts2.Result"),
                 Class.forName("org.apache.struts2.SimpleAction")
@@ -82,7 +82,7 @@ public class ConfigurationProviderOgnlAllowlistTest extends 
XWorkJUnit4TestCase
                 Class.forName("java.lang.Object"),
                 Class.forName("org.apache.struts2.Validateable"),
                 Class.forName("org.apache.struts2.mock.MockInterceptor"),
-                Class.forName("org.apache.struts2.Action"),
+                Class.forName("org.apache.struts2.action.Action"),
                 
Class.forName("org.apache.struts2.interceptor.AbstractInterceptor"),
                 Class.forName("org.apache.struts2.Result"),
                 Class.forName("org.apache.struts2.SimpleAction")
@@ -106,7 +106,7 @@ public class ConfigurationProviderOgnlAllowlistTest extends 
XWorkJUnit4TestCase
                 Class.forName("org.apache.struts2.interceptor.Interceptor"),
                 Class.forName("java.lang.Object"),
                 Class.forName("org.apache.struts2.Validateable"),
-                Class.forName("org.apache.struts2.Action"),
+                Class.forName("org.apache.struts2.action.Action"),
                 
Class.forName("org.apache.struts2.interceptor.AbstractInterceptor"),
                 Class.forName("org.apache.struts2.Result")
         );
diff --git 
a/core/src/test/java/org/apache/struts2/config/providers/MockConfigurationProvider.java
 
b/core/src/test/java/org/apache/struts2/config/providers/MockConfigurationProvider.java
index 8cc506f05..197008175 100644
--- 
a/core/src/test/java/org/apache/struts2/config/providers/MockConfigurationProvider.java
+++ 
b/core/src/test/java/org/apache/struts2/config/providers/MockConfigurationProvider.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.config.providers;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionChainResult;
 import org.apache.struts2.ModelDrivenAction;
 import org.apache.struts2.ObjectFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/config/providers/NoNoArgsConstructorAction.java
 
b/core/src/test/java/org/apache/struts2/config/providers/NoNoArgsConstructorAction.java
index f9b9268b8..0b26d5a67 100644
--- 
a/core/src/test/java/org/apache/struts2/config/providers/NoNoArgsConstructorAction.java
+++ 
b/core/src/test/java/org/apache/struts2/config/providers/NoNoArgsConstructorAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.config.providers;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 /**
  * Action with no public constructor taking no args.
diff --git 
a/core/src/test/java/org/apache/struts2/config/providers/PrivateConstructorAction.java
 
b/core/src/test/java/org/apache/struts2/config/providers/PrivateConstructorAction.java
index 43876adaa..542d5dcdc 100644
--- 
a/core/src/test/java/org/apache/struts2/config/providers/PrivateConstructorAction.java
+++ 
b/core/src/test/java/org/apache/struts2/config/providers/PrivateConstructorAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.config.providers;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 /**
  * Action with no public constructor.
diff --git 
a/core/src/test/java/org/apache/struts2/config/providers/XmlConfigurationProviderResultsTest.java
 
b/core/src/test/java/org/apache/struts2/config/providers/XmlConfigurationProviderResultsTest.java
index 5c3d4b55c..ba9ab6564 100644
--- 
a/core/src/test/java/org/apache/struts2/config/providers/XmlConfigurationProviderResultsTest.java
+++ 
b/core/src/test/java/org/apache/struts2/config/providers/XmlConfigurationProviderResultsTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.config.providers;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionChainResult;
 import org.apache.struts2.SimpleAction;
 import org.apache.struts2.config.ConfigurationException;
diff --git 
a/core/src/test/java/org/apache/struts2/conversion/ConversionTestAction.java 
b/core/src/test/java/org/apache/struts2/conversion/ConversionTestAction.java
index 8d779256b..a425a202b 100644
--- a/core/src/test/java/org/apache/struts2/conversion/ConversionTestAction.java
+++ b/core/src/test/java/org/apache/struts2/conversion/ConversionTestAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.conversion;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.conversion.annotations.Conversion;
 import org.apache.struts2.conversion.annotations.ConversionRule;
 import org.apache.struts2.conversion.annotations.ConversionType;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/AliasInterceptorTest.java 
b/core/src/test/java/org/apache/struts2/interceptor/AliasInterceptorTest.java
index ed05389b9..d2a38f332 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/AliasInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/AliasInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.SimpleAction;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorTest.java
index efdd77b58..9fa6f2613 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorTest.java
@@ -19,7 +19,7 @@
 package org.apache.struts2.interceptor;
 
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionChainResult;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorWithConfigTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorWithConfigTest.java
index 211e7329b..b8e912705 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorWithConfigTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ChainingInterceptorWithConfigTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionChainResult;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.ActionProxyFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ConversionErrorInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ConversionErrorInterceptorTest.java
index 677f248d3..35e87a182 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ConversionErrorInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ConversionErrorInterceptorTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.interceptor;
 
 import com.mockobjects.dynamic.C;
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionSupport;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java 
b/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java
index 13c9bbc7a..8189f5ce8 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionSupport;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptorTest.java
index 83cdcfaba..f00c51487 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/DefaultWorkflowInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ExceptionMappingInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ExceptionMappingInterceptorTest.java
index a7e799b49..e5f922fdf 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ExceptionMappingInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ExceptionMappingInterceptorTest.java
@@ -19,7 +19,7 @@
 package org.apache.struts2.interceptor;
 
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitDelayAction.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitDelayAction.java
index d6caace33..76f72ca84 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitDelayAction.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitDelayAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 /**
  * Used by ExecuteAndWaitInterceptorTest.
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java
index a8da7b1e6..7af1e6cc4 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.ActionProxyFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java 
b/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java
index 879924f6e..de85a42a6 100644
--- a/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java
+++ b/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.DefaultLocaleProviderFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/MessageStoreInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/MessageStoreInterceptorTest.java
index 86bc96286..c066b41d5 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/MessageStoreInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/MessageStoreInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionSupport;
@@ -31,7 +31,6 @@ import jakarta.servlet.http.HttpServletRequest;
 import jakarta.servlet.http.HttpServletResponse;
 import jakarta.servlet.http.HttpSession;
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/MessageStorePreResultListenerTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/MessageStorePreResultListenerTest.java
index e640231ee..bd39d829a 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/MessageStorePreResultListenerTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/MessageStorePreResultListenerTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionSupport;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ModelDrivenInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ModelDrivenInterceptorTest.java
index ed3b2c2d2..cb2b06a0c 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ModelDrivenInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ModelDrivenInterceptorTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.interceptor;
 
 import com.mockobjects.dynamic.ConstraintMatcher;
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionSupport;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/PreResultListenerTest.java 
b/core/src/test/java/org/apache/struts2/interceptor/PreResultListenerTest.java
index 0b397ab6f..0b91f30cd 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/PreResultListenerTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/PreResultListenerTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.interceptor;
 
 import com.mockobjects.dynamic.C;
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.ActionProxyFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/PrepareInterceptorTest.java 
b/core/src/test/java/org/apache/struts2/interceptor/PrepareInterceptorTest.java
index 85e62126d..5d93ce1db 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/PrepareInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/PrepareInterceptorTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.interceptor;
 
 import com.mockobjects.dynamic.Mock;
 import junit.framework.TestCase;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.Preparable;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ScopedModelDrivenInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ScopedModelDrivenInterceptorTest.java
index f9e2777ac..9f9d594e6 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ScopedModelDrivenInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ScopedModelDrivenInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ObjectFactory;
 import org.apache.struts2.ProxyObjectFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ServletConfigInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ServletConfigInterceptorTest.java
index dbea9906e..8adc1ccba 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ServletConfigInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ServletConfigInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.StrutsInternalTestCase;
 import org.apache.struts2.StrutsStatics;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptorTest.java
index 399774c6a..15f42c175 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptorTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.interceptor;
 
 import com.mockobjects.dynamic.C;
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionSupport;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/TokenInterceptorTest.java 
b/core/src/test/java/org/apache/struts2/interceptor/TokenInterceptorTest.java
index 2fd00872f..8ab596075 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/TokenInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/TokenInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.util.ValueStack;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptorTest.java
index 9ca100634..d499ac000 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptorTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.interceptor;
 
 import org.apache.struts2.TestConfigurationProvider;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionProxy;
 
 /**
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ValidationErrorAwareTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ValidationErrorAwareTest.java
index 268359c77..31a64aaad 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ValidationErrorAwareTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ValidationErrorAwareTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/ValidationInterceptorPrefixMethodInvocationTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/ValidationInterceptorPrefixMethodInvocationTest.java
index 647351446..6aba113c4 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/ValidationInterceptorPrefixMethodInvocationTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/ValidationInterceptorPrefixMethodInvocationTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotatedAction.java
 
b/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotatedAction.java
index 6ac578ae6..cfa057756 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotatedAction.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotatedAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor.annotations;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 /**
  * @author Zsolt Szasz, zsolt at lorecraft dot com
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java
index 37a163a06..dcb80b943 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor.annotations;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.ActionProxyFactory;
 import org.apache.struts2.DefaultActionProxyFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/annotations/ShortcircuitedAction.java
 
b/core/src/test/java/org/apache/struts2/interceptor/annotations/ShortcircuitedAction.java
index 6026eedc8..525b88c24 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/annotations/ShortcircuitedAction.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/annotations/ShortcircuitedAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor.annotations;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 /**
  * @author Zsolt Szasz, zsolt at lorecraft dot com
diff --git 
a/core/src/test/java/org/apache/struts2/interceptor/parameter/ParametersInterceptorTest.java
 
b/core/src/test/java/org/apache/struts2/interceptor/parameter/ParametersInterceptorTest.java
index be23fef5d..de849cd10 100644
--- 
a/core/src/test/java/org/apache/struts2/interceptor/parameter/ParametersInterceptorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/interceptor/parameter/ParametersInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.interceptor.parameter;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.ActionSupport;
diff --git a/core/src/test/java/org/apache/struts2/result/StreamResultTest.java 
b/core/src/test/java/org/apache/struts2/result/StreamResultTest.java
index 9a223effb..b1e756cbc 100644
--- a/core/src/test/java/org/apache/struts2/result/StreamResultTest.java
+++ b/core/src/test/java/org/apache/struts2/result/StreamResultTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.result;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.mock.MockActionInvocation;
 import org.apache.struts2.util.ClassLoaderUtil;
diff --git a/core/src/test/java/org/apache/struts2/util/MyBeanAction.java 
b/core/src/test/java/org/apache/struts2/util/MyBeanAction.java
index f59502e11..54b47868c 100644
--- a/core/src/test/java/org/apache/struts2/util/MyBeanAction.java
+++ b/core/src/test/java/org/apache/struts2/util/MyBeanAction.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.util;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.conversion.annotations.Conversion;
 import org.apache.struts2.conversion.annotations.ConversionRule;
 import org.apache.struts2.conversion.annotations.TypeConversion;
diff --git 
a/core/src/test/java/org/apache/struts2/util/StrutsLocalizedTextProviderTest.java
 
b/core/src/test/java/org/apache/struts2/util/StrutsLocalizedTextProviderTest.java
index 39bc8f8ce..44c68acd7 100644
--- 
a/core/src/test/java/org/apache/struts2/util/StrutsLocalizedTextProviderTest.java
+++ 
b/core/src/test/java/org/apache/struts2/util/StrutsLocalizedTextProviderTest.java
@@ -19,7 +19,7 @@
 package org.apache.struts2.util;
 
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/validator/AnnotationActionValidatorManagerTest.java
 
b/core/src/test/java/org/apache/struts2/validator/AnnotationActionValidatorManagerTest.java
index 5d5779467..39065c933 100644
--- 
a/core/src/test/java/org/apache/struts2/validator/AnnotationActionValidatorManagerTest.java
+++ 
b/core/src/test/java/org/apache/struts2/validator/AnnotationActionValidatorManagerTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.validator;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/validator/ExpressionValidatorTest.java 
b/core/src/test/java/org/apache/struts2/validator/ExpressionValidatorTest.java
index 82b373ef8..bb4bd4f85 100644
--- 
a/core/src/test/java/org/apache/struts2/validator/ExpressionValidatorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/validator/ExpressionValidatorTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.validator;
 
 import com.mockobjects.dynamic.C;
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/validator/ModelDrivenValidationTest.java
 
b/core/src/test/java/org/apache/struts2/validator/ModelDrivenValidationTest.java
index 7ba745c1b..8c59588d7 100644
--- 
a/core/src/test/java/org/apache/struts2/validator/ModelDrivenValidationTest.java
+++ 
b/core/src/test/java/org/apache/struts2/validator/ModelDrivenValidationTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.validator;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.ModelDrivenAction;
diff --git 
a/core/src/test/java/org/apache/struts2/validator/StringValidatorTest.java 
b/core/src/test/java/org/apache/struts2/validator/StringValidatorTest.java
index 2e4bde077..d052b4aea 100644
--- a/core/src/test/java/org/apache/struts2/validator/StringValidatorTest.java
+++ b/core/src/test/java/org/apache/struts2/validator/StringValidatorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.validator;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorModelTest.java
 
b/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorModelTest.java
index 05fd4f331..157fea909 100644
--- 
a/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorModelTest.java
+++ 
b/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorModelTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.validator;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorTest.java
 
b/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorTest.java
index b9d361c3b..a0ec81166 100644
--- 
a/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorTest.java
+++ 
b/core/src/test/java/org/apache/struts2/validator/VisitorFieldValidatorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.validator;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/AbstractTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/AbstractTagTest.java
index 4c936148e..eee8b06fa 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/AbstractTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/AbstractTagTest.java
@@ -19,7 +19,7 @@
 package org.apache.struts2.views.jsp;
 
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git a/core/src/test/java/org/apache/struts2/views/jsp/ActionTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/ActionTagTest.java
index 70445a3d0..3b60dca09 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/ActionTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/ActionTagTest.java
@@ -21,7 +21,7 @@ package org.apache.struts2.views.jsp;
 import com.mockobjects.dynamic.Mock;
 import jakarta.servlet.jsp.JspException;
 import jakarta.servlet.jsp.PageContext;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/AppendIteratorTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/AppendIteratorTagTest.java
index 2554fc648..b2f09c175 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/AppendIteratorTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/AppendIteratorTagTest.java
@@ -24,7 +24,7 @@ import java.util.List;
 
 import org.apache.struts2.views.jsp.iterator.AppendIteratorTag;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 
 /**
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/IteratorGeneratorTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/IteratorGeneratorTagTest.java
index 94b279395..618335996 100644
--- 
a/core/src/test/java/org/apache/struts2/views/jsp/IteratorGeneratorTagTest.java
+++ 
b/core/src/test/java/org/apache/struts2/views/jsp/IteratorGeneratorTagTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.views.jsp;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 import org.apache.struts2.util.IteratorGenerator.Converter;
 import org.apache.struts2.views.jsp.iterator.IteratorGeneratorTag;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/MergeIteratorTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/MergeIteratorTagTest.java
index bc6aa152f..254d72be4 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/MergeIteratorTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/MergeIteratorTagTest.java
@@ -24,7 +24,7 @@ import java.util.List;
 
 import org.apache.struts2.views.jsp.iterator.MergeIteratorTag;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 
 /**
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/SortIteratorTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/SortIteratorTagTest.java
index 6eb5fc147..1fc02ef85 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/SortIteratorTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/SortIteratorTagTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.views.jsp;
 
 import jakarta.servlet.jsp.JspException;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 import org.apache.struts2.views.jsp.iterator.SortIteratorTag;
 
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java
index 999a2bfbb..1d8a18c33 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.views.jsp;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 import org.apache.struts2.util.SubsetIteratorFilter.Decider;
 import org.apache.struts2.views.jsp.iterator.SubsetIteratorTag;
diff --git a/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java
index 1e4d2fae6..2dcffd901 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java
@@ -35,7 +35,7 @@ import org.apache.struts2.views.jsp.ui.StrutsBodyContent;
 import org.apache.struts2.views.jsp.ui.TestAction1;
 import org.springframework.mock.web.MockJspWriter;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.util.ValueStack;
 import org.apache.struts2.util.ValueStackFactory;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionErrorTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionErrorTagTest.java
index 3eeae5ae3..c253efda4 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionErrorTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionErrorTagTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.views.jsp.ui;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.struts2.TestAction;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionMessageTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionMessageTagTest.java
index 9fd50a47e..c11e79400 100644
--- 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionMessageTagTest.java
+++ 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/ActionMessageTagTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.views.jsp.ui;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.struts2.TestAction;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/FieldErrorTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/FieldErrorTagTest.java
index 3bd44769c..c1fbcae8d 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/ui/FieldErrorTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/FieldErrorTagTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.views.jsp.ui;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 import org.apache.struts2.TestAction;
 import org.apache.struts2.views.jsp.AbstractUITagTest;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/FormTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/FormTagTest.java
index 85903ce21..18ffb2028 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/ui/FormTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/FormTagTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.views.jsp.ui;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionProxy;
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/LocaleTestAction.java 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/LocaleTestAction.java
index 56cec4340..0cc49a0b7 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/ui/LocaleTestAction.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/LocaleTestAction.java
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.struts2.TestAction;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 public class LocaleTestAction extends TestAction implements Action {
 
diff --git 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/UpDownSelectTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/UpDownSelectTagTest.java
index 29af863ef..dc05b54bf 100644
--- 
a/core/src/test/java/org/apache/struts2/views/jsp/ui/UpDownSelectTagTest.java
+++ 
b/core/src/test/java/org/apache/struts2/views/jsp/ui/UpDownSelectTagTest.java
@@ -25,7 +25,7 @@ import java.util.Map;
 
 import org.apache.struts2.views.jsp.AbstractUITagTest;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 
 /**
diff --git 
a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java
 
b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java
index c5be55ffc..5731afc3a 100644
--- 
a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java
+++ 
b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java
@@ -19,6 +19,7 @@
 package org.apache.struts2.convention;
 
 import org.apache.struts2.*;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.config.Configuration;
 import org.apache.struts2.config.ConfigurationException;
 import org.apache.struts2.config.entities.*;
diff --git 
a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java
 
b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java
index 9de94c217..2688e32d7 100644
--- 
a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java
+++ 
b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.convention;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.config.ConfigurationException;
 import org.apache.struts2.config.entities.PackageConfig;
diff --git 
a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
 
b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
index f993ea153..45eb3f8b8 100644
--- 
a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
+++ 
b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
@@ -545,7 +545,7 @@ public class PackageBasedActionConfigBuilder implements 
ActionConfigBuilder {
     /**
      * Note that we can't include the test for {@link #actionSuffix} here
      * because a class is included if its name ends in {@link #actionSuffix} OR
-     * it implements {@link org.apache.struts2.Action}. Since the whole
+     * it implements {@link org.apache.struts2.action.Action}. Since the whole
      * goal is to avoid loading the class if we don't have to, the 
(actionSuffix
      * || implements Action) test will have to remain until later. See
      * {@link #getActionClassTest()} for the test performed on the loaded
@@ -660,7 +660,7 @@ public class PackageBasedActionConfigBuilder implements 
ActionConfigBuilder {
                 boolean nameMatches = matchesSuffix(classInfo.getName());
 
                 try {
-                    return inPackage && (nameMatches || (checkImplementsAction 
&& org.apache.struts2.Action.class.isAssignableFrom(classInfo.get())));
+                    return inPackage && (nameMatches || (checkImplementsAction 
&& org.apache.struts2.action.Action.class.isAssignableFrom(classInfo.get())));
                 } catch (ClassNotFoundException ex) {
                     LOG.error("Unable to load class [{}]", 
classInfo.getName(), ex);
                     return false;
diff --git 
a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java
 
b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java
index d55fd6019..3254336d2 100644
--- 
a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java
+++ 
b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java
@@ -67,7 +67,7 @@ public @interface Result {
      * @return  The name of the result mapping. This is the value that is 
returned from the action
      *          method and is used to associate a location with a return value.
      */
-    String[] name() default org.apache.struts2.Action.SUCCESS;
+    String[] name() default org.apache.struts2.action.Action.SUCCESS;
 
     /**
      * @return  The location of the result within the web application or 
anywhere on disk. This location
diff --git 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java
 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java
index 3af91c99f..9abfdbc0c 100644
--- 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java
+++ 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.convention.actions;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 public class Skip implements Action {
     public String execute() throws Exception {
diff --git 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java
 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java
index c0ee03683..b235e5367 100644
--- 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java
+++ 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java
@@ -25,7 +25,7 @@ import org.apache.struts2.convention.annotation.Action;
  * This is a test action.
  * </p>
  */
-public class SingleActionNameAction2 implements org.apache.struts2.Action {
+public class SingleActionNameAction2 implements 
org.apache.struts2.action.Action {
     @Action("action345")
     public String execute() {
         return null;
diff --git 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java
 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java
index 23ce3d9d5..fbb2b9a3c 100644
--- 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java
+++ 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.convention.actions.idx;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 public class Index implements Action {
     public String execute() throws Exception {
diff --git 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java
 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java
index 8a0325c26..dbde6bfb2 100644
--- 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java
+++ 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.convention.actions.idx.idx2;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 public class Index implements Action {
     public String execute() throws Exception {
diff --git 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java
 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java
index ce2b2ccb3..a59307d64 100644
--- 
a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java
+++ 
b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.convention.actions.skip;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 
 public class Index implements Action {
     public String execute() throws Exception {
diff --git 
a/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java 
b/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
index 7b9637876..df8609ab6 100644
--- a/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
+++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.json;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.inject.Inject;
 import org.apache.struts2.interceptor.AbstractInterceptor;
diff --git 
a/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java
 
b/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java
index fddeb37b6..3e5bd736d 100644
--- 
a/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java
+++ 
b/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.json;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ModelDriven;
 import org.apache.struts2.interceptor.ValidationAware;
diff --git 
a/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java
 
b/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java
index 4e1041678..08b3b78cc 100644
--- 
a/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java
+++ 
b/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.json;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionSupport;
 import org.apache.struts2.config.entities.ActionConfig;
diff --git a/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java 
b/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
index 93002671e..e8ff6ad2a 100644
--- a/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
+++ b/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
@@ -25,7 +25,7 @@ import java.util.Set;
 
 import org.apache.struts2.json.annotations.JSON;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionSupport;
 
 /**
diff --git 
a/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsSpringJUnit4TestCaseTest.java
 
b/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsSpringJUnit4TestCaseTest.java
index dd2511b26..366e9bb3d 100644
--- 
a/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsSpringJUnit4TestCaseTest.java
+++ 
b/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsSpringJUnit4TestCaseTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.junit;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.dispatcher.mapper.ActionMapping;
 import org.junit.Assert;
diff --git 
a/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsTestCaseTest.java 
b/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsTestCaseTest.java
index 951a9c846..5ae5f1731 100644
--- 
a/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsTestCaseTest.java
+++ 
b/plugins/junit/src/test/java/org/apache/struts2/junit/StrutsTestCaseTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.junit;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.dispatcher.mapper.ActionMapping;
 
diff --git 
a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java 
b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java
index b2d84f8f0..5b90c9fd5 100644
--- 
a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java
+++ 
b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java
@@ -19,6 +19,7 @@
 package org.apache.struts2.rest;
 
 import org.apache.struts2.*;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.config.ConfigurationException;
 import org.apache.struts2.config.entities.ActionConfig;
 import org.apache.struts2.config.entities.ResultConfig;
diff --git 
a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java
 
b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java
index a85fddbbd..0efe9a57a 100644
--- 
a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java
+++ 
b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.rest;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.inject.Inject;
diff --git 
a/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeInterceptorTest.java
 
b/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeInterceptorTest.java
index 61058cdc2..2232ccb94 100644
--- 
a/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeInterceptorTest.java
+++ 
b/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeInterceptorTest.java
@@ -20,7 +20,7 @@ package org.apache.struts2.rest;
 
 import com.mockobjects.dynamic.AnyConstraintMatcher;
 import com.mockobjects.dynamic.Mock;
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionInvocation;
 import org.apache.struts2.ActionSupport;
diff --git 
a/plugins/spring/src/test/java/org/apache/struts2/spring/ActionsFromSpringTest.java
 
b/plugins/spring/src/test/java/org/apache/struts2/spring/ActionsFromSpringTest.java
index 0875810ad..a3cf29a62 100644
--- 
a/plugins/spring/src/test/java/org/apache/struts2/spring/ActionsFromSpringTest.java
+++ 
b/plugins/spring/src/test/java/org/apache/struts2/spring/ActionsFromSpringTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.spring;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ActionProxy;
 import org.apache.struts2.ObjectFactory;
diff --git 
a/plugins/spring/src/test/java/org/apache/struts2/spring/ExecuteInterceptor.java
 
b/plugins/spring/src/test/java/org/apache/struts2/spring/ExecuteInterceptor.java
index 7a2481598..43a3b8153 100644
--- 
a/plugins/spring/src/test/java/org/apache/struts2/spring/ExecuteInterceptor.java
+++ 
b/plugins/spring/src/test/java/org/apache/struts2/spring/ExecuteInterceptor.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.spring;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.aopalliance.intercept.MethodInterceptor;
 import org.aopalliance.intercept.MethodInvocation;
 
diff --git 
a/plugins/spring/src/test/java/org/apache/struts2/spring/SpringObjectFactoryTest.java
 
b/plugins/spring/src/test/java/org/apache/struts2/spring/SpringObjectFactoryTest.java
index 4a5e84300..3f1412ca2 100644
--- 
a/plugins/spring/src/test/java/org/apache/struts2/spring/SpringObjectFactoryTest.java
+++ 
b/plugins/spring/src/test/java/org/apache/struts2/spring/SpringObjectFactoryTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.spring;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionChainResult;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.ModelDrivenAction;
diff --git 
a/plugins/xslt/src/test/java/org/apache/struts2/result/xslt/XSLTResultTest.java 
b/plugins/xslt/src/test/java/org/apache/struts2/result/xslt/XSLTResultTest.java
index ee3e1b36f..6e5929636 100644
--- 
a/plugins/xslt/src/test/java/org/apache/struts2/result/xslt/XSLTResultTest.java
+++ 
b/plugins/xslt/src/test/java/org/apache/struts2/result/xslt/XSLTResultTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.struts2.result.xslt;
 
-import org.apache.struts2.Action;
+import org.apache.struts2.action.Action;
 import org.apache.struts2.ActionContext;
 import org.apache.struts2.Result;
 import org.apache.struts2.mock.MockActionInvocation;

Reply via email to