public class PortletApplicationContextLocator extends Object implements javax.servlet.ServletContextListener
ApplicationContext. If running in a web application a
WebApplicationContext is available.
#getApplicationContext() should be used by most uPortal code that needs access to the portal's
ApplicationContext. It ensures that a single ApplicationContext is used portal-wide both
when the portal is running as a web-application and when tools are run from the command line.
For legacy portal code that is not yet Spring managed and does not have access to the ServletContext this
class provides similar functionality to WebApplicationContextUtils via the
getWebApplicationContext() and getRequiredWebApplicationContext(). These methods are deprecated as
any code that requires a WebApplicationContext should either be refactored as a Spring managed bean or have
access to the ServletContext| Modifier and Type | Field and Description |
|---|---|
static String |
DATABASE_CONTEXT_LOCATION
Subset of the main context; used in hbm2dll and importing
|
| Constructor and Description |
|---|
PortletApplicationContextLocator() |
| Modifier and Type | Method and Description |
|---|---|
void |
contextDestroyed(javax.servlet.ServletContextEvent sce) |
void |
contextInitialized(javax.servlet.ServletContextEvent sce) |
static org.springframework.context.ApplicationContext |
getApplicationContext(String importExportContextFile)
If running in a web application the existing
WebApplicationContext will be returned. |
static org.springframework.web.context.WebApplicationContext |
getRequiredWebApplicationContext()
Deprecated.
This method is a work-around for areas in uPortal that do not have the ability to use the
WebApplicationContextUtils.getRequiredWebApplicationContext(javax.servlet.ServletContext) directly. |
static org.springframework.web.context.WebApplicationContext |
getWebApplicationContext()
Deprecated.
This method is a work-around for areas in uPortal that do not have the ability to use the
WebApplicationContextUtils.getWebApplicationContext(javax.servlet.ServletContext) directly. |
static boolean |
isRunningInWebApplication()
Deprecated.
Only needed for using
getRequiredWebApplicationContext() or getWebApplicationContext(). |
static void |
shutdown()
If the ApplicationContext returned by
#getApplicationContext() is 'portal managed' the shutdown hook
for the context is called, closing and cleaning up all spring managed resources. |
public static final String DATABASE_CONTEXT_LOCATION
public void contextInitialized(javax.servlet.ServletContextEvent sce)
contextInitialized in interface javax.servlet.ServletContextListenerpublic void contextDestroyed(javax.servlet.ServletContextEvent sce)
contextDestroyed in interface javax.servlet.ServletContextListener@Deprecated public static boolean isRunningInWebApplication()
getRequiredWebApplicationContext() or getWebApplicationContext().true if a WebApplicationContext is available, false if only an ApplicationContext is available@Deprecated public static org.springframework.web.context.WebApplicationContext getRequiredWebApplicationContext()
WebApplicationContextUtils.getRequiredWebApplicationContext(javax.servlet.ServletContext) directly.IllegalStateException - if no ServletContext is available to retrieve a WebApplicationContext for or if the root WebApplicationContext could not be found@Deprecated public static org.springframework.web.context.WebApplicationContext getWebApplicationContext()
WebApplicationContextUtils.getWebApplicationContext(javax.servlet.ServletContext) directly.public static org.springframework.context.ApplicationContext getApplicationContext(String importExportContextFile)
WebApplicationContext will be returned. if
not a singleton ApplicationContext is created if needed and returned. Unless a WebApplicationContext
is specifically needed this method should be used as it will work both when running in and out
of a web applicationApplicationContext for the portal.public static void shutdown()
#getApplicationContext() is 'portal managed' the shutdown hook
for the context is called, closing and cleaning up all spring managed resources.
If the ApplicationContext returned by #getApplicationContext() is actually a WebApplicationContext
this method does nothing but log an error message.Copyright © 2016 Jasig, Inc.. All Rights Reserved.