diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java
index 908349806..472f23ea7 100644
--- a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java
+++ b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java
@@ -21,8 +21,6 @@ package com.opensymphony.xwork2;
import com.opensymphony.xwork2.interceptor.PreResultListener;
import com.opensymphony.xwork2.util.ValueStack;
-import java.io.Serializable;
-
/**
* An {@link ActionInvocation} represents the execution state of an {@link Action}. It holds the Interceptors and the Action instance.
* By repeated re-entrant execution of the invoke() method, initially by the {@link ActionProxy}, then by the Interceptors, the
@@ -31,7 +29,7 @@ import java.io.Serializable;
* @author Jason Carreira
* @see com.opensymphony.xwork2.ActionProxy
*/
-public interface ActionInvocation extends Serializable {
+public interface ActionInvocation {
/**
* Get the Action associated with this ActionInvocation.
@@ -178,20 +176,4 @@ public interface ActionInvocation extends Serializable {
void init(ActionProxy proxy) ;
- /**
- * Prepares instance of ActionInvocation to be serializable,
- * which simple means removing all unserializable fields, eg. Container
- *
- * @return ActionInvocation which can be serialize (eg. into HttpSession)
- */
- ActionInvocation serialize();
-
- /**
- * Performs opposite process to restore back ActionInvocation after deserialisation
- *
- * @param actionContext current {@link ActionContext}
- * @return fully operational ActionInvocation
- */
- ActionInvocation deserialize(ActionContext actionContext);
-
}
diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java
index 5777007c1..6b039d680 100644
--- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java
+++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java
@@ -500,27 +500,4 @@ public class DefaultActionInvocation implements ActionInvocation {
}
}
- /**
- * Version ready to be serialize
- *
- * @return instance without reference to {@link Container}
- */
- public ActionInvocation serialize() {
- DefaultActionInvocation that = this;
- that.container = null;
- return that;
- }
-
- /**
- * Restoring Container
- *
- * @param actionContext current {@link ActionContext}
- * @return instance which can be used to invoke action
- */
- public ActionInvocation deserialize(ActionContext actionContext) {
- DefaultActionInvocation that = this;
- that.container = actionContext.getContainer();
- return that;
- }
-
}
diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java
index 9053273dc..f37e8a6ae 100644
--- a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java
+++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java
@@ -124,12 +124,4 @@ public class MockActionInvocation implements ActionInvocation {
public void init(ActionProxy proxy) {
}
- public ActionInvocation serialize() {
- return this;
- }
-
- public ActionInvocation deserialize(ActionContext actionContext) {
- return this;
- }
-
}
diff --git a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java
index 5f1ad483d..6eaaf7366 100644
--- a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java
+++ b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java
@@ -59,7 +59,7 @@ public class InvocationSessionStore {
ValueStack stack = invocationContext.invocation.getStack();
ActionContext.getContext().setValueStack(stack);
- return invocationContext.invocation.deserialize(ActionContext.getContext());
+ return invocationContext.invocation;
}
/**
@@ -71,7 +71,7 @@ public class InvocationSessionStore {
* @param invocation the action invocation
*/
public static void storeInvocation(String key, String token, ActionInvocation invocation) {
- InvocationContext invocationContext = new InvocationContext(invocation.serialize(), token);
+ InvocationContext invocationContext = new InvocationContext(invocation, token);
Map invocationMap = getInvocationMap();
invocationMap.put(key, invocationContext);
setInvocationMap(invocationMap);
diff --git a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java
index 334839082..89e5b9645 100644
--- a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java
+++ b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java
@@ -75,34 +75,6 @@ public class DefaultActionInvocationTest extends XWorkTestCase {
assertTrue(mockInterceptor3.isExecuted());
}
- public void testSerialization() throws Exception {
- // given
- DefaultActionInvocation actionInvocation = new DefaultActionInvocation(new HashMap(), false);
- actionInvocation.setContainer(new MockContainer());
-
- // when
- DefaultActionInvocation serializable = (DefaultActionInvocation) actionInvocation.serialize();
-
- // then
- assertNull(actionInvocation.container);
- assertNull(serializable.container);
- }
-
- public void testDeserialization() throws Exception {
- // given
- DefaultActionInvocation actionInvocation = new DefaultActionInvocation(new HashMap(), false);
- MockContainer mockContainer = new MockContainer();
- ActionContext.getContext().setContainer(mockContainer);
-
- // when
- DefaultActionInvocation deserializable = (DefaultActionInvocation) actionInvocation.deserialize(ActionContext.getContext());
-
- // then
- assertNotNull(actionInvocation.container);
- assertNotNull(deserializable.container);
- assertEquals(mockContainer, deserializable.container);
- }
-
public void testInvokingExistingExecuteMethod() throws Exception {
// given
DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) {
diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java b/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java
index 34392fbd3..fc37d4a55 100644
--- a/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java
+++ b/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java
@@ -86,12 +86,4 @@ public class TestActionInvocation implements ActionInvocation {
public void init(ActionProxy proxy) {
}
- public ActionInvocation serialize() {
- return this;
- }
-
- public ActionInvocation deserialize(ActionContext actionContext) {
- return this;
- }
-
}
diff --git a/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java b/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java
index 04c371afb..b77b59a6b 100644
--- a/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java
+++ b/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java
@@ -110,7 +110,6 @@ public class DWRValidator {
}
public static class ValidatorActionInvocation extends DefaultActionInvocation {
- private static final long serialVersionUID = -7645433725470191275L;
protected ValidatorActionInvocation(Map extraContext, boolean pushAction) throws Exception {
super(extraContext, pushAction);
diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java
index 01e3a11c5..dd8492799 100644
--- a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java
+++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java
@@ -556,8 +556,6 @@ public class JSONInterceptorTest extends StrutsTestCase {
class MockActionInvocationEx extends MockActionInvocation {
- private static final long serialVersionUID = 3057703805130170757L;
-
private boolean invoked;
@Override
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 e018591c6..0857a780e 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
@@ -46,8 +46,6 @@ import java.util.Map;
*/
public class RestActionInvocation extends DefaultActionInvocation {
- private static final long serialVersionUID = 3485701178946428716L;
-
private static final Logger LOG = LogManager.getLogger(RestActionInvocation.class);
private ContentTypeHandlerManager handlerSelector;
diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java
index f7b35de2d..b172eb4fb 100644
--- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java
+++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java
@@ -140,8 +140,6 @@ public abstract class OldDecorator2NewStrutsDecorator extends BaseWebAppDecorato
static class DummyActionInvocation implements ActionInvocation {
- private static final long serialVersionUID = -4808072199157363028L;
-
ActionSupport action;
public DummyActionInvocation(ActionSupport action) {
@@ -196,14 +194,6 @@ public abstract class OldDecorator2NewStrutsDecorator extends BaseWebAppDecorato
public void init(ActionProxy proxy) {
}
- public ActionInvocation serialize() {
- return null;
- }
-
- public ActionInvocation deserialize(ActionContext actionContext) {
- return null;
- }
-
}
}