org.springframework.web.struts
Class DelegatingActionUtils

java.lang.Object
  extended by 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
protected static Log logger
           
 
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 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

logger

protected static final Log logger
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()


Copyright (c) 2002-2007 The Spring Framework Project.