|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.springframework.core.io.DefaultResourceLoader
org.springframework.context.support.AbstractApplicationContext
org.springframework.context.support.AbstractXmlApplicationContext
org.springframework.web.context.support.XmlWebApplicationContext
WebApplicationContext implementation that takes configuration from an XML document.
By default, the configuration will be taken from "/WEB-INF/applicationContext.xml" for the root context, and "/WEB-INF/test-servlet.xml" for a context with the namespace "test-servlet" (like for a DispatcherServlet instance with the servlet-name "test").
The config location defaults can be overridden via the contextConfigLocation context param of ContextLoader and servlet param of FrameworkServlet. Config locations can either denote concrete files like "/WEB-INF/context.xml" or Ant-style patterns like "/WEB-INF/*-context.xml" (see PathMatcher javadoc for pattern details).
Note: In case of multiple config locations, later bean definitions will override ones defined in earlier loaded files. This can be leveraged to deliberately override certain bean definitions via an extra XML file.
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 AbstractApplicationContext.
In addition to the special beans detected by AbstractApplicationContext, this class detects a ThemeSource bean in the context, with the name "themeSource".
setNamespace(java.lang.String)
,
setConfigLocations(java.lang.String[])
,
getResourcePatternResolver()
,
ContextLoader.initWebApplicationContext(javax.servlet.ServletContext)
,
FrameworkServlet.initWebApplicationContext()
,
AbstractApplicationContext
,
ThemeSource
Field Summary | |
static String |
DEFAULT_CONFIG_LOCATION
Default config location for the root context |
static String |
DEFAULT_CONFIG_LOCATION_PREFIX
Default prefix for building a config location for a namespace |
static String |
DEFAULT_CONFIG_LOCATION_SUFFIX
Default suffix for building a config location for a namespace |
Fields inherited from class org.springframework.context.support.AbstractApplicationContext |
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME |
Fields inherited from interface org.springframework.web.context.ConfigurableWebApplicationContext |
CONFIG_LOCATION_DELIMITERS |
Fields inherited from interface org.springframework.web.context.WebApplicationContext |
ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE |
Fields inherited from interface org.springframework.beans.factory.BeanFactory |
FACTORY_BEAN_PREFIX |
Fields inherited from interface org.springframework.core.io.ResourceLoader |
CLASSPATH_URL_PREFIX |
Constructor Summary | |
XmlWebApplicationContext()
|
Method Summary | |
protected String[] |
getConfigLocations()
Return an array of resource locations, referring to the XML bean definition files that this context should be built with. |
protected String |
getNamespace()
|
protected Resource |
getResourceByPath(String path)
Resolve file paths beneath the root of the web application. |
protected ResourcePatternResolver |
getResourcePatternResolver()
Use a ServletContextResourcePatternResolver, to be able to find matching resources below the web application root directory even in a WAR file which has not been expanded. |
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 |
onRefresh()
Initialize the theme capability. |
protected void |
postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
Modify the application context's internal bean factory after its standard initialization. |
void |
refresh()
Load respectively refresh the persistent representation of the configuration, which might an XML file, properties file, or relational database schema. |
void |
setConfigLocations(String[] configLocations)
Set the config locations for this web application context. |
void |
setNamespace(String namespace)
Set the namespace for this web application context, to be used for building a default context config location. |
void |
setServletContext(ServletContext servletContext)
Set the ServletContext for this web application context. |
String |
toString()
Return diagnostic information. |
Methods inherited from class org.springframework.context.support.AbstractXmlApplicationContext |
createBeanFactory, getBeanFactory, initBeanDefinitionReader, loadBeanDefinitions, refreshBeanFactory |
Methods inherited from class org.springframework.context.support.AbstractApplicationContext |
addBeanFactoryPostProcessor, addListener, close, containsBean, containsBeanDefinition, getAliases, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeansOfType, getBeansOfType, getDisplayName, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getStartupDate, getType, isSingleton, publishEvent, setDisplayName, setParent |
Methods inherited from class org.springframework.core.io.DefaultResourceLoader |
getClassLoader, getResource |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.springframework.context.ApplicationContext |
getDisplayName, getParent, getStartupDate, publishEvent |
Methods inherited from interface org.springframework.beans.factory.ListableBeanFactory |
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNames, getBeanDefinitionNames, getBeansOfType, getBeansOfType |
Methods inherited from interface org.springframework.beans.factory.BeanFactory |
containsBean, getAliases, getBean, getBean, getType, isSingleton |
Methods inherited from interface org.springframework.beans.factory.HierarchicalBeanFactory |
getParentBeanFactory |
Methods inherited from interface org.springframework.context.MessageSource |
getMessage, getMessage, getMessage |
Methods inherited from interface org.springframework.core.io.ResourceLoader |
getResource |
Methods inherited from interface org.springframework.context.ConfigurableApplicationContext |
addBeanFactoryPostProcessor, close, getBeanFactory, setParent |
Field Detail |
public static final String DEFAULT_CONFIG_LOCATION
public static final String DEFAULT_CONFIG_LOCATION_PREFIX
public static final String DEFAULT_CONFIG_LOCATION_SUFFIX
Constructor Detail |
public XmlWebApplicationContext()
Method Detail |
public void setServletContext(ServletContext servletContext)
ConfigurableWebApplicationContext
Does not cause an initialization of the context: refresh needs to be called after the setting of all configuration properties.
setServletContext
in interface ConfigurableWebApplicationContext
ConfigurableApplicationContext.refresh()
public ServletContext getServletContext()
WebApplicationContext
getServletContext
in interface WebApplicationContext
public void setNamespace(String namespace)
ConfigurableWebApplicationContext
setNamespace
in interface ConfigurableWebApplicationContext
protected String getNamespace()
public void setConfigLocations(String[] configLocations)
ConfigurableWebApplicationContext
setConfigLocations
in interface ConfigurableWebApplicationContext
protected String[] getConfigLocations()
AbstractXmlApplicationContext
Can also include location patterns, which will get resolved via a ResourcePatternResolver.
getConfigLocations
in class AbstractXmlApplicationContext
AbstractApplicationContext.getResourcePatternResolver()
public void refresh() throws BeansException
ConfigurableApplicationContext
refresh
in interface ConfigurableApplicationContext
refresh
in class AbstractApplicationContext
BeansException
protected void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
AbstractApplicationContext
postProcessBeanFactory
in class AbstractApplicationContext
beanFactory
- the bean factory used by the application contextprotected Resource getResourceByPath(String path)
Note: Even if a given path starts with a slash, it will get interpreted as relative to the web application root directory (which is the way most servlet containers handle such paths).
getResourceByPath
in class DefaultResourceLoader
path
- path to the resource
ServletContextResource
protected ResourcePatternResolver getResourcePatternResolver()
getResourcePatternResolver
in class AbstractApplicationContext
ServletContextResourcePatternResolver
protected void onRefresh()
onRefresh
in class AbstractApplicationContext
AbstractApplicationContext.refresh()
public Theme getTheme(String themeName)
ThemeSource
getTheme
in interface ThemeSource
themeName
- name of the theme
public String toString()
toString
in class AbstractApplicationContext
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |