public class MergeXmlWebApplicationContext
extends org.springframework.web.context.support.XmlWebApplicationContext
WebApplicationContext
implementation
which takes its configuration from XML documents, understood by an
XmlBeanDefinitionReader
.
By default, the configuration will be taken from "/WEB-INF/applicationContext.xml" for the rootId 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
init-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.
In addition to standard configuration, this implementation also takes a list of
patch configuration files that are merged into the configuration provided above.
org.broadleafcommerce.profile.extensibility.MergeXmlConfigResourceFactory
. The patch
file locations are set via the "patchConfigLocation" context-param of
MergeContextLoader
. Patch locations
can either denote concrete files like "/WEB-INF/patch.xml" or Ant-style patterns
like "/WEB-INF/*-context.xml" (see org.springframework.util.pathMatcher
javadoc for pattern details).
DEFAULT_CONFIG_LOCATION, DEFAULT_CONFIG_LOCATION_PREFIX, DEFAULT_CONFIG_LOCATION_SUFFIX
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME
APPLICATION_CONTEXT_ID_PREFIX, SERVLET_CONFIG_BEAN_NAME
CONTEXT_ATTRIBUTES_BEAN_NAME, CONTEXT_PARAMETERS_BEAN_NAME, ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, SCOPE_APPLICATION, SCOPE_GLOBAL_SESSION, SCOPE_REQUEST, SCOPE_SESSION, SERVLET_CONTEXT_BEAN_NAME
CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAME
Constructor and Description |
---|
MergeXmlWebApplicationContext() |
Modifier and Type | Method and Description |
---|---|
protected void |
doClose() |
String |
getPatchLocation() |
String |
getShutdownBean() |
String |
getShutdownMethod() |
protected void |
loadBeanDefinitions(org.springframework.beans.factory.xml.XmlBeanDefinitionReader reader)
Load the bean definitions with the given XmlBeanDefinitionReader.
|
void |
setPatchLocation(String patchLocation) |
void |
setShutdownBean(String shutdownBean) |
void |
setShutdownMethod(String shutdownMethod) |
getDefaultConfigLocations, initBeanDefinitionReader, loadBeanDefinitions
createEnvironment, getApplicationName, getConfigLocations, getNamespace, getResourceByPath, getResourcePatternResolver, getServletConfig, getServletContext, getTheme, initPropertySources, onRefresh, postProcessBeanFactory, setNamespace, setServletConfig, setServletContext
afterPropertiesSet, resolvePath, setBeanName, setConfigLocation, setConfigLocations, setId
cancelRefresh, closeBeanFactory, createBeanFactory, customizeBeanFactory, getBeanFactory, hasBeanFactory, refreshBeanFactory, setAllowBeanDefinitionOverriding, setAllowCircularReferences
addApplicationListener, addBeanFactoryPostProcessor, addListener, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResources, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, obtainFreshBeanFactory, onClose, prepareBeanFactory, prepareRefresh, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, setDisplayName, setEnvironment, setParent, start, stop, toString
getClassLoader, getResource, setClassLoader
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
setConfigLocation, setConfigLocations
addApplicationListener, addBeanFactoryPostProcessor, close, getBeanFactory, getEnvironment, isActive, refresh, registerShutdownHook, setEnvironment, setId, setParent
getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDate
containsBeanDefinition, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation
containsLocalBean, getParentBeanFactory
containsBean, getAliases, getBean, getBean, getBean, getBean, getType, isPrototype, isSingleton, isTypeMatch
getMessage, getMessage, getMessage
getResources
protected void loadBeanDefinitions(org.springframework.beans.factory.xml.XmlBeanDefinitionReader reader) throws org.springframework.beans.BeansException, IOException
The lifecycle of the bean factory is handled by the refreshBeanFactory method; therefore this method is just supposed to load and/or register bean definitions.
Delegates to a ResourcePatternResolver for resolving location patterns into Resource instances.
loadBeanDefinitions
in class org.springframework.web.context.support.XmlWebApplicationContext
org.springframework.beans.BeansException
- in case of bean registration errorsIOException
- if the required XML document isn't foundAbstractRefreshableApplicationContext.refreshBeanFactory()
,
AbstractRefreshableWebApplicationContext.getConfigLocations()
,
AbstractApplicationContext.getResources(java.lang.String)
,
AbstractRefreshableWebApplicationContext.getResourcePatternResolver()
protected void doClose()
doClose
in class org.springframework.context.support.AbstractApplicationContext
public String getPatchLocation()
public void setPatchLocation(String patchLocation)
patchLocation
- the patchLocation to setpublic String getShutdownBean()
public void setShutdownBean(String shutdownBean)
shutdownBean
- the shutdownBean to setpublic String getShutdownMethod()
public void setShutdownMethod(String shutdownMethod)
shutdownMethod
- the shutdownMethod to setCopyright © 2014. All rights reserved.