org.springframework.web.struts
Class ActionSupport

java.lang.Object
  extended byorg.apache.struts.action.Action
      extended byorg.springframework.web.struts.ActionSupport

public abstract class ActionSupport
extends Action

Convenience class for Spring-aware Struts 1.1/1.2 Actions.

Provides a reference to the current Spring application context, e.g. for bean lookup or resource loading. Auto-detects a ContextLoaderPlugIn context, falling back to the root WebApplicationContext. For typical usage, i.e. accessing middle tier beans, use a root WebApplicationContext.

For Struts DispatchActions or Lookup/MappingDispatchActions, use the analogous DispatchActionSupport or LookupDispatchActionSupport / MappingDispatchActionSupport class, respectively.

As an alternative approach, you can wire your Struts Actions themselves as Spring beans, passing references to them via IoC rather than looking up references in a programmatic fashion. Check out DelegatingActionProxy and DelegatingRequestProcessor.

Since:
1.0.1
Author:
Juergen Hoeller
See Also:
ContextLoaderPlugIn.SERVLET_CONTEXT_PREFIX, WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, ContextLoaderListener, ContextLoaderServlet, DispatchActionSupport, LookupDispatchActionSupport, MappingDispatchActionSupport, DelegatingActionProxy, DelegatingRequestProcessor

Field Summary
 
Fields inherited from class org.apache.struts.action.Action
defaultLocale, servlet
 
Constructor Summary
ActionSupport()
           
 
Method Summary
protected  MessageSourceAccessor getMessageSourceAccessor()
          Return a MessageSourceAccessor for the application context used by this object, for easy message access.
protected  ServletContext getServletContext()
          Return the current ServletContext.
protected  File getTempDir()
          Return the temporary directory for the current web application, as provided by the servlet container.
protected  WebApplicationContext getWebApplicationContext()
          Return the current Spring WebApplicationContext.
protected  WebApplicationContext initWebApplicationContext(ActionServlet actionServlet)
          Fetch ContextLoaderPlugIn's WebApplicationContext from the ServletContext, falling back to the root WebApplicationContext (the usual case).
protected  void onDestroy()
          Callback for custom destruction when the ActionServlet shuts down.
protected  void onInit()
          Callback for custom initialization after the context has been set up.
 void setServlet(ActionServlet actionServlet)
          Initialize the WebApplicationContext for this Action.
 
Methods inherited from class org.apache.struts.action.Action
addErrors, addMessages, execute, execute, generateToken, getDataSource, getDataSource, getErrors, getLocale, getMessages, getResources, getResources, getServlet, isCancelled, isTokenValid, isTokenValid, resetToken, saveErrors, saveErrors, saveMessages, saveMessages, saveToken, setLocale
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ActionSupport

public ActionSupport()
Method Detail

setServlet

public void setServlet(ActionServlet actionServlet)
Initialize the WebApplicationContext for this Action. Invokes onInit after successful initialization of the context.

See Also:
initWebApplicationContext(org.apache.struts.action.ActionServlet), onInit()

initWebApplicationContext

protected WebApplicationContext initWebApplicationContext(ActionServlet actionServlet)
                                                   throws IllegalStateException
Fetch ContextLoaderPlugIn's WebApplicationContext from the ServletContext, falling back to the root WebApplicationContext (the usual case).

Parameters:
actionServlet - the associated ActionServlet
Returns:
the WebApplicationContext
Throws:
IllegalStateException - if no WebApplicationContext could be found
See Also:
ContextLoaderPlugIn.SERVLET_CONTEXT_PREFIX, WebApplicationContextUtils.getWebApplicationContext(javax.servlet.ServletContext)

getWebApplicationContext

protected final WebApplicationContext getWebApplicationContext()
Return the current Spring WebApplicationContext.


getMessageSourceAccessor

protected final MessageSourceAccessor getMessageSourceAccessor()
Return a MessageSourceAccessor for the application context used by this object, for easy message access.


getServletContext

protected final ServletContext getServletContext()
Return the current ServletContext.


getTempDir

protected final File getTempDir()
Return the temporary directory for the current web application, as provided by the servlet container.

Returns:
the File representing the temporary directory

onInit

protected void onInit()
Callback for custom initialization after the context has been set up.

See Also:
setServlet(org.apache.struts.action.ActionServlet)

onDestroy

protected void onDestroy()
Callback for custom destruction when the ActionServlet shuts down.

See Also:
setServlet(org.apache.struts.action.ActionServlet)


Copyright (C) 2003-2004 The Spring Framework Project.