diff --git a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java index 62499f8a4..90ec60b7a 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java @@ -49,7 +49,9 @@ public class StrutsPrepareAndExecuteFilter implements StrutsStatics, Filter { cleanup = new CleanupOperations(dispatcher); execute = new ExecuteOperations(filterConfig.getServletContext(), dispatcher); } finally { - cleanup.cleanupInit(); + if (cleanup != null) { + cleanup.cleanupInit(); + } } } diff --git a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java index d3fb494ff..d9e7c3b5f 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java @@ -44,7 +44,9 @@ public class StrutsPrepareFilter implements StrutsStatics, Filter { prepare = new PrepareOperations(filterConfig.getServletContext(), dispatcher); cleanup = new CleanupOperations(dispatcher); } finally { - cleanup.cleanupInit(); + if (cleanup != null) { + cleanup.cleanupInit(); + } } } diff --git a/core/src/main/resources/org/apache/struts2/default.properties b/core/src/main/resources/org/apache/struts2/default.properties index 9a5a1670d..52bc09994 100644 --- a/core/src/main/resources/org/apache/struts2/default.properties +++ b/core/src/main/resources/org/apache/struts2/default.properties @@ -48,6 +48,10 @@ struts.objectFactory.spring.autoWire = name ### valid values are: true, false (true is the default) struts.objectFactory.spring.useClassCache = true +### ensures the autowire strategy is always respected. +### valid values are: true, false (false is the default) +struts.objectFactory.spring.autoWire.alwaysRespect = false + ### if specified, the default object type determiner can be overridden here ### Note: short-hand notation is supported in some cases, such as "tiger" or "notiger" ### Alternatively, you can provide a com.opensymphony.xwork2.util.ObjectTypeDeterminer implementation name here