Class PortletApplicationContextUtils
- java.lang.Object
- org.springframework.web.portlet.context.PortletApplicationContextUtils
public abstract class PortletApplicationContextUtils extends Object
Convenience methods for retrieving the rootWebApplicationContextfor a givenPortletContext. This is useful for programmatically accessing a Spring application context from within custom Portlet implementations.- Since:
- 2.0
- Author:
- Juergen Hoeller, John A. Lewis
- See Also:
ContextLoader,WebApplicationContextUtils,FrameworkPortlet,DispatcherPortlet
Constructor Summary
Constructors Constructor Description PortletApplicationContextUtils()
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ApplicationContextgetRequiredWebApplicationContext(PortletContext pc)Find the rootWebApplicationContextfor this web app, typically loaded viaContextLoaderListener.static ApplicationContextgetWebApplicationContext(PortletContext pc)Find the rootWebApplicationContextfor this web app, typically loaded viaContextLoaderListener.static voidinitPortletPropertySources(MutablePropertySources propertySources, ServletContext servletContext, PortletContext portletContext, PortletConfig portletConfig)ReplaceServlet- andPortlet-basedstub property sourceswith actual instances populated with the givenservletContext,portletContextandportletConfigobjects.
Constructor Detail
PortletApplicationContextUtils
public PortletApplicationContextUtils()
Method Detail
getWebApplicationContext
public static ApplicationContext getWebApplicationContext(PortletContext pc)
Find the rootWebApplicationContextfor this web app, typically loaded viaContextLoaderListener.Will rethrow an exception that happened on root context startup, to differentiate between a failed context startup and no context at all.
- Parameters:
pc- PortletContext to find the web application context for- Returns:
- the root WebApplicationContext for this web app, or
nullif none (typed to ApplicationContext to avoid a Servlet API dependency; can usually be casted to WebApplicationContext, but there shouldn't be a need to) - See Also:
WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE
getRequiredWebApplicationContext
public static ApplicationContext getRequiredWebApplicationContext(PortletContext pc) throws IllegalStateException
Find the rootWebApplicationContextfor this web app, typically loaded viaContextLoaderListener.Will rethrow an exception that happened on root context startup, to differentiate between a failed context startup and no context at all.
- Parameters:
pc- PortletContext to find the web application context for- Returns:
- the root WebApplicationContext for this web app (typed to ApplicationContext to avoid a Servlet API dependency; can usually be casted to WebApplicationContext, but there shouldn't be a need to)
- Throws:
IllegalStateException- if the root WebApplicationContext could not be found- See Also:
WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE
initPortletPropertySources
public static void initPortletPropertySources(MutablePropertySources propertySources, ServletContext servletContext, PortletContext portletContext, PortletConfig portletConfig)
ReplaceServlet- andPortlet-basedstub property sourceswith actual instances populated with the givenservletContext,portletContextandportletConfigobjects.This method is idempotent with respect to the fact it may be called any number of times but will perform replacement of stub property sources with their corresponding actual property sources once and only once.
- Parameters:
propertySources- theMutablePropertySourcesto initialize (must not benull)servletContext- the currentServletContext(ignored ifnullor if theservlet context property sourcehas already been initialized)portletContext- the currentPortletContext(ignored ifnullor if theportlet context property sourcehas already been initialized)portletConfig- the currentPortletConfig(ignored ifnullor if theportlet config property sourcehas already been initialized)- See Also:
PropertySource.StubPropertySource,WebApplicationContextUtils.initServletPropertySources(MutablePropertySources, ServletContext),ConfigurableEnvironment.getPropertySources()