public abstract class

WebApplicationContextUtils

extends Object
java.lang.Object
   ↳ org.springframework.web.context.support.WebApplicationContextUtils

Class Overview

Convenience methods for retrieving the root WebApplicationContext for a given ServletContext. This is e.g. useful for accessing a Spring context from within custom web views or Struts actions.

Note that there are more convenient ways of accessing the root context for many web frameworks, either part of Spring or available as external library. This helper class is just the most generic way to access the root context.

Summary

Public Constructors
WebApplicationContextUtils()
Public Methods
static WebApplicationContext getRequiredWebApplicationContext(ServletContext sc)
Find the root WebApplicationContext for this web application, which is typically loaded via ContextLoaderListener.
static WebApplicationContext getWebApplicationContext(ServletContext sc, String attrName)
Find a custom WebApplicationContext for this web application.
static WebApplicationContext getWebApplicationContext(ServletContext sc)
Find the root WebApplicationContext for this web application, which is typically loaded via ContextLoaderListener.
static void initServletPropertySources(MutablePropertySources propertySources, ServletContext servletContext, ServletConfig servletConfig)
Replace Servlet-based stub property sources with actual instances populated with the given context and config objects.
static void initServletPropertySources(MutablePropertySources propertySources, ServletContext servletContext)
Replace Servlet-based stub property sources with actual instances populated with the given context object.
static void registerEnvironmentBeans(ConfigurableListableBeanFactory bf, ServletContext sc)
Register web-specific environment beans ("contextParameters", "contextAttributes") with the given BeanFactory, as used by the WebApplicationContext.
static void registerEnvironmentBeans(ConfigurableListableBeanFactory bf, ServletContext sc, ServletConfig config)
Register web-specific environment beans ("contextParameters", "contextAttributes") with the given BeanFactory, as used by the WebApplicationContext.
static void registerWebApplicationScopes(ConfigurableListableBeanFactory beanFactory)
Register web-specific scopes ("request", "session", "globalSession") with the given BeanFactory, as used by the WebApplicationContext.
static void registerWebApplicationScopes(ConfigurableListableBeanFactory beanFactory, ServletContext sc)
Register web-specific scopes ("request", "session", "globalSession", "application") with the given BeanFactory, as used by the WebApplicationContext.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public WebApplicationContextUtils ()

Public Methods

public static WebApplicationContext getRequiredWebApplicationContext (ServletContext sc)

Find the root WebApplicationContext for this web application, which is typically loaded via ContextLoaderListener.

Will rethrow an exception that happened on root context startup, to differentiate between a failed context startup and no context at all.

Parameters
sc ServletContext to find the web application context for
Returns
  • the root WebApplicationContext for this web app
Throws
IllegalStateException if the root WebApplicationContext could not be found

public static WebApplicationContext getWebApplicationContext (ServletContext sc, String attrName)

Find a custom WebApplicationContext for this web application.

Parameters
sc ServletContext to find the web application context for
attrName the name of the ServletContext attribute to look for
Returns
  • the desired WebApplicationContext for this web app, or null if none

public static WebApplicationContext getWebApplicationContext (ServletContext sc)

Find the root WebApplicationContext for this web application, which is typically loaded via ContextLoaderListener.

Will rethrow an exception that happened on root context startup, to differentiate between a failed context startup and no context at all.

Parameters
sc ServletContext to find the web application context for
Returns
  • the root WebApplicationContext for this web app, or null if none

public static void initServletPropertySources (MutablePropertySources propertySources, ServletContext servletContext, ServletConfig servletConfig)

Replace Servlet-based stub property sources with actual instances populated with the given context and config objects.

public static void initServletPropertySources (MutablePropertySources propertySources, ServletContext servletContext)

Replace Servlet-based stub property sources with actual instances populated with the given context object.

public static void registerEnvironmentBeans (ConfigurableListableBeanFactory bf, ServletContext sc)

Register web-specific environment beans ("contextParameters", "contextAttributes") with the given BeanFactory, as used by the WebApplicationContext.

Parameters
bf the BeanFactory to configure
sc the ServletContext that we're running within

public static void registerEnvironmentBeans (ConfigurableListableBeanFactory bf, ServletContext sc, ServletConfig config)

Register web-specific environment beans ("contextParameters", "contextAttributes") with the given BeanFactory, as used by the WebApplicationContext.

Parameters
bf the BeanFactory to configure
sc the ServletContext that we're running within
config the ServletConfig of the containing Portlet

public static void registerWebApplicationScopes (ConfigurableListableBeanFactory beanFactory)

Register web-specific scopes ("request", "session", "globalSession") with the given BeanFactory, as used by the WebApplicationContext.

Parameters
beanFactory the BeanFactory to configure

public static void registerWebApplicationScopes (ConfigurableListableBeanFactory beanFactory, ServletContext sc)

Register web-specific scopes ("request", "session", "globalSession", "application") with the given BeanFactory, as used by the WebApplicationContext.

Parameters
beanFactory the BeanFactory to configure
sc the ServletContext that we're running within