public class StaticWebApplicationContext extends StaticApplicationContext implements ConfigurableWebApplicationContext, ThemeSource
WebApplicationContext
implementation for testing. Not intended for use in production applications.
Implements the ConfigurableWebApplicationContext
interface to allow for direct replacement of an XmlWebApplicationContext,
despite not actually supporting external configuration files.
Interprets resource paths as servlet context resources, i.e. as paths beneath
the web application root. Absolute paths, e.g. for files outside the web app root,
can be accessed via "file:" URLs, as implemented by
DefaultResourceLoader.
In addition to the special beans detected by
AbstractApplicationContext,
this class detects a bean of type ThemeSource
in the context, under the special bean name "themeSource".
ThemeSourceDefaultResourceLoader.ClassPathContextResourceAPPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAMEAPPLICATION_CONTEXT_ID_PREFIX, SERVLET_CONFIG_BEAN_NAMECONTEXT_ATTRIBUTES_BEAN_NAME, CONTEXT_PARAMETERS_BEAN_NAME, ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, SCOPE_APPLICATION, SCOPE_GLOBAL_SESSION, SCOPE_REQUEST, SCOPE_SESSION, SERVLET_CONTEXT_BEAN_NAMECONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAMEFACTORY_BEAN_PREFIXCLASSPATH_ALL_URL_PREFIXCLASSPATH_URL_PREFIX| Constructor and Description |
|---|
StaticWebApplicationContext() |
| Modifier and Type | Method and Description |
|---|---|
protected ConfigurableEnvironment |
createEnvironment()
Create and return a new
StandardServletEnvironment. |
String[] |
getConfigLocations()
Return the config locations for this web application context,
or
null if none specified. |
String |
getNamespace()
Return the namespace for this web application context, if any.
|
protected Resource |
getResourceByPath(String path)
This implementation supports file paths beneath the root of the ServletContext.
|
protected ResourcePatternResolver |
getResourcePatternResolver()
This implementation supports pattern matching in unexpanded WARs too.
|
ServletConfig |
getServletConfig()
Return the ServletConfig for this web application context, if any.
|
ServletContext |
getServletContext()
Return the standard Servlet API ServletContext for this application.
|
Theme |
getTheme(String themeName)
Return the Theme instance for the given theme name.
|
protected void |
initPropertySources()
Replace any stub property sources with actual instances.
|
protected void |
onRefresh()
Initialize the theme capability.
|
protected void |
postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
Register request/session scopes, a
ServletContextAwareProcessor, etc. |
void |
setConfigLocation(String configLocation)
The
StaticWebApplicationContext class does not support this method. |
void |
setConfigLocations(String[] configLocations)
The
StaticWebApplicationContext class does not support this method. |
void |
setNamespace(String namespace)
Set the namespace for this web application context,
to be used for building a default context config location.
|
void |
setServletConfig(ServletConfig servletConfig)
Set the ServletConfig for this web application context.
|
void |
setServletContext(ServletContext servletContext)
Set the ServletContext that this WebApplicationContext runs in.
|
addMessage, assertBeanFactoryActive, getStaticMessageSource, registerPrototype, registerPrototype, registerSingleton, registerSingletoncancelRefresh, closeBeanFactory, getBeanDefinition, getBeanFactory, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanNameInUse, refreshBeanFactory, registerAlias, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setId, setParent, setResourceLoaderaddApplicationListener, addBeanFactoryPostProcessor, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, doClose, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationName, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, obtainFreshBeanFactory, onClose, prepareBeanFactory, prepareRefresh, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, setDisplayName, setEnvironment, start, stop, toStringgetClassLoader, setClassLoaderclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddApplicationListener, addBeanFactoryPostProcessor, close, getBeanFactory, getEnvironment, isActive, refresh, registerShutdownHook, setEnvironment, setId, setParentgetApplicationName, getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDatecontainsBeanDefinition, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotationcontainsLocalBean, getParentBeanFactorycontainsBean, getAliases, getBean, getBean, getBean, getBean, getType, isPrototype, isSingleton, isTypeMatchgetMessage, getMessage, getMessagepublishEventgetResourcesgetClassLoader, getResourcecontainsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNamesgetAliasespublic void setServletContext(ServletContext servletContext)
setServletContext in interface ConfigurableWebApplicationContextConfigurableApplicationContext.refresh()public ServletContext getServletContext()
WebApplicationContextAlso available for a Portlet application, in addition to the PortletContext.
getServletContext in interface WebApplicationContextpublic void setServletConfig(ServletConfig servletConfig)
ConfigurableWebApplicationContextsetServletConfig in interface ConfigurableWebApplicationContextConfigurableApplicationContext.refresh()public ServletConfig getServletConfig()
ConfigurableWebApplicationContextgetServletConfig in interface ConfigurableWebApplicationContextpublic void setNamespace(String namespace)
ConfigurableWebApplicationContextsetNamespace in interface ConfigurableWebApplicationContextpublic String getNamespace()
ConfigurableWebApplicationContextgetNamespace in interface ConfigurableWebApplicationContextpublic void setConfigLocation(String configLocation)
StaticWebApplicationContext class does not support this method.setConfigLocation in interface ConfigurableWebApplicationContextUnsupportedOperationException - alwayspublic void setConfigLocations(String[] configLocations)
StaticWebApplicationContext class does not support this method.setConfigLocations in interface ConfigurableWebApplicationContextUnsupportedOperationException - alwayspublic String[] getConfigLocations()
ConfigurableWebApplicationContextnull if none specified.getConfigLocations in interface ConfigurableWebApplicationContextprotected void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
ServletContextAwareProcessor, etc.postProcessBeanFactory in class AbstractApplicationContextbeanFactory - the bean factory used by the application contextprotected Resource getResourceByPath(String path)
getResourceByPath in class DefaultResourceLoaderpath - the path to the resourceServletContextResourceprotected ResourcePatternResolver getResourcePatternResolver()
getResourcePatternResolver in class AbstractApplicationContextServletContextResourcePatternResolverprotected ConfigurableEnvironment createEnvironment()
StandardServletEnvironment.createEnvironment in class AbstractApplicationContextprotected void onRefresh()
onRefresh in class AbstractApplicationContextAbstractApplicationContext.refresh()protected void initPropertySources()
AbstractApplicationContextReplace any stub property sources with actual instances.
public Theme getTheme(String themeName)
ThemeSourceThe returned Theme will resolve theme-specific messages, codes, file paths, etc (e.g. CSS and image files in a web environment).
getTheme in interface ThemeSourcethemeName - the name of the themenull if none defined.
Note that, by convention, a ThemeSource should at least be able to
return a default Theme for the default theme name "theme" but may also
return default Themes for other theme names.AbstractThemeResolver.ORIGINAL_DEFAULT_THEME_NAME