## org.springframework.web.struts
Class DelegatingActionUtils

    java.lang.Object
      org.springframework.web.struts.DelegatingActionUtils

    public abstract class DelegatingActionUtils

extends Object

Common methods for letting Struts Actions work with a Spring WebApplicationContext.

As everything in Struts is based on concrete inheritance, we have to provide an Action subclass (DelegatingActionProxy) and two RequestProcessor subclasses (DelegatingRequestProcessor and DelegatingTilesRequestProcessor). The only way to share common functionality is a utility class like this one.

Since:
  1.0.2
Author:
  Juergen Hoeller
See Also:
  `DelegatingActionProxy`, `DelegatingRequestProcessor`, `DelegatingTilesRequestProcessor`

Field Summary
`static String` `AUTOWIRE_BY_NAME` Value of the autowire init-param that indicates autowiring by name: "byName"
`static String` `AUTOWIRE_BY_TYPE` Value of the autowire init-param that indicates autowiring by type: "byType"
`static String` `PARAM_AUTOWIRE` The name of the autowire init-param specified on the Struts ActionServlet: "spring.autowire"
`static String` `PARAM_DEPENDENCY_CHECK` The name of the dependency check init-param specified on the Struts ActionServlet: "spring.dependencyCheck"

Constructor Summary
`DelegatingActionUtils()`

Method Summary
`static String` `determineActionBeanName(ActionMapping mapping)` Default implementation of Action bean determination, taking the mapping path and prepending the module prefix, if any.
`static WebApplicationContext` `findRequiredWebApplicationContext(ActionServlet actionServlet, ModuleConfig moduleConfig)` Find most specific context available: check ContextLoaderPlugIn's WebApplicationContext first, fall back to root WebApplicationContext else.
`static int` `getAutowireMode(ActionServlet actionServlet)` Determine the autowire mode from the "autowire" init-param of the Struts ActionServlet, falling back to "AUTOWIRE_BY_TYPE" as default.
`static boolean` `getDependencyCheck(ActionServlet actionServlet)` Determine the dependency check to use from the "dependencyCheck" init-param of the Struts ActionServlet, falling back to no dependency check as default.
`static WebApplicationContext` `getRequiredWebApplicationContext(ActionServlet actionServlet, ModuleConfig moduleConfig)` Fetch ContextLoaderPlugIn's WebApplicationContext from the ServletContext.
`static WebApplicationContext` `getWebApplicationContext(ActionServlet actionServlet, ModuleConfig moduleConfig)` Fetch ContextLoaderPlugIn's WebApplicationContext from the ServletContext.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### PARAM_AUTOWIRE

    public static final String PARAM_AUTOWIRE

  The name of the autowire init-param specified on the Struts ActionServlet: "spring.autowire"

  See Also:
    Constant Field Values

### PARAM_DEPENDENCY_CHECK

    public static final String PARAM_DEPENDENCY_CHECK

  The name of the dependency check init-param specified on the Struts ActionServlet: "spring.dependencyCheck"

  See Also:
    Constant Field Values

### AUTOWIRE_BY_NAME

    public static final String AUTOWIRE_BY_NAME

  Value of the autowire init-param that indicates autowiring by name: "byName"

  See Also:
    Constant Field Values

### AUTOWIRE_BY_TYPE

    public static final String AUTOWIRE_BY_TYPE

  Value of the autowire init-param that indicates autowiring by type: "byType"

  See Also:
    Constant Field Values

Constructor Detail

### DelegatingActionUtils

    public DelegatingActionUtils()

Method Detail

### getWebApplicationContext

    public static WebApplicationContext getWebApplicationContext(ActionServlet actionServlet,
                                                                 ModuleConfig moduleConfig)

  Fetch ContextLoaderPlugIn's WebApplicationContext from the ServletContext.

  Checks for a module-specific context first, falling back to the context for the default module else.

  Parameters:
    `actionServlet` - the associated ActionServlet
    `moduleConfig` - the associated ModuleConfig (can be `null`)
  Returns:
    the WebApplicationContext, or `null` if none
  See Also:
    `ContextLoaderPlugIn.SERVLET_CONTEXT_PREFIX`

### getRequiredWebApplicationContext

    public static WebApplicationContext getRequiredWebApplicationContext(ActionServlet actionServlet,
                                                                         ModuleConfig moduleConfig)
                                                                  throws IllegalStateException

  Fetch ContextLoaderPlugIn's WebApplicationContext from the ServletContext.

  Checks for a module-specific context first, falling back to the context for the default module else.

  Parameters:
    `actionServlet` - the associated ActionServlet
    `moduleConfig` - the associated ModuleConfig (can be `null`)
  Returns:
    the WebApplicationContext
  Throws:
    `IllegalStateException` - if no WebApplicationContext could be found
  See Also:
    `ContextLoaderPlugIn.SERVLET_CONTEXT_PREFIX`

### findRequiredWebApplicationContext

    public static WebApplicationContext findRequiredWebApplicationContext(ActionServlet actionServlet,
                                                                          ModuleConfig moduleConfig)
                                                                   throws IllegalStateException

  Find most specific context available: check ContextLoaderPlugIn's WebApplicationContext first, fall back to root WebApplicationContext else.

  When checking the ContextLoaderPlugIn context: checks for a module-specific context first, falling back to the context for the default module else.

  Parameters:
    `actionServlet` - the associated ActionServlet
    `moduleConfig` - the associated ModuleConfig (can be `null`)
  Returns:
    the WebApplicationContext
  Throws:
    `IllegalStateException` - if no WebApplicationContext could be found
  See Also:
    `getWebApplicationContext(org.apache.struts.action.ActionServlet, org.apache.struts.config.ModuleConfig)`, `WebApplicationContextUtils.getRequiredWebApplicationContext(javax.servlet.ServletContext)`

### determineActionBeanName

    public static String determineActionBeanName(ActionMapping mapping)

  Default implementation of Action bean determination, taking the mapping path and prepending the module prefix, if any.

  Parameters:
    `mapping` - the Struts ActionMapping
  Returns:
    the name of the Action bean
  See Also:
    `ActionConfig.getPath()`, `ModuleConfig.getPrefix()`

### getAutowireMode

    public static int getAutowireMode(ActionServlet actionServlet)

  Determine the autowire mode from the "autowire" init-param of the Struts ActionServlet, falling back to "AUTOWIRE_BY_TYPE" as default.

  Parameters:
    `actionServlet` - the Struts ActionServlet
  Returns:
    the autowire mode to use
  See Also:
    `PARAM_AUTOWIRE`, `AUTOWIRE_BY_NAME`, `AUTOWIRE_BY_TYPE`, `AutowireCapableBeanFactory.autowireBeanProperties(java.lang.Object, int, boolean)`, `AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE`, `AutowireCapableBeanFactory.AUTOWIRE_BY_NAME`

### getDependencyCheck

    public static boolean getDependencyCheck(ActionServlet actionServlet)

  Determine the dependency check to use from the "dependencyCheck" init-param of the Struts ActionServlet, falling back to no dependency check as default.

  Parameters:
    `actionServlet` - the Struts ActionServlet
  Returns:
    whether to enforce a dependency check or not
  See Also:
    `PARAM_DEPENDENCY_CHECK`, `AutowireCapableBeanFactory.autowireBeanProperties(java.lang.Object, int, boolean)`

Copyright © 2002-2008 The Spring Framework.