Home » Spring-Framework-090522 » org.springframework » web » context » support » [javadoc | source]
org.springframework.web.context.support
public class: XmlWebApplicationContext [javadoc | source]
java.lang.Object
   org.springframework.core.io.DefaultResourceLoader
      org.springframework.context.support.AbstractApplicationContext
         org.springframework.context.support.AbstractRefreshableApplicationContext
            org.springframework.context.support.AbstractRefreshableConfigApplicationContext
               org.springframework.web.context.support.AbstractRefreshableWebApplicationContext
                  org.springframework.web.context.support.XmlWebApplicationContext

All Implemented Interfaces:
    ThemeSource, ConfigurableWebApplicationContext, BeanNameAware, InitializingBean, ConfigurableApplicationContext, DisposableBean, ResourceLoader

org.springframework.web.context.WebApplicationContext implementation which takes its configuration from XML documents, understood by an org.springframework.beans.factory.xml.XmlBeanDefinitionReader . This is essentially the equivalent of org.springframework.context.support.AbstractXmlApplicationContext for a web environment.

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 org.springframework.web.context.ContextLoader and servlet init-param of org.springframework.web.servlet.FrameworkServlet . Config locations can either denote concrete files like "/WEB-INF/context.xml" or Ant-style patterns like "/WEB-INF/*-context.xml" (see org.springframework.util.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.

For a WebApplicationContext that reads in a different bean definition format, create an analogous subclass of AbstractRefreshableWebApplicationContext . Such a context implementation can be specified as "contextClass" context-param for ContextLoader or "contextClass" init-param for FrameworkServlet.

Field Summary
public static final  String DEFAULT_CONFIG_LOCATION    Default config location for the root context 
public static final  String DEFAULT_CONFIG_LOCATION_PREFIX    Default prefix for building a config location for a namespace 
public static final  String DEFAULT_CONFIG_LOCATION_SUFFIX    Default suffix for building a config location for a namespace 
Fields inherited from org.springframework.context.support.AbstractApplicationContext:
MESSAGE_SOURCE_BEAN_NAME,  APPLICATION_EVENT_MULTICASTER_BEAN_NAME,  logger
Method from org.springframework.web.context.support.XmlWebApplicationContext Summary:
getDefaultConfigLocations,   initBeanDefinitionReader,   loadBeanDefinitions,   loadBeanDefinitions
Methods from org.springframework.web.context.support.AbstractRefreshableWebApplicationContext:
getConfigLocations,   getNamespace,   getResourceByPath,   getResourcePatternResolver,   getServletConfig,   getServletContext,   getTheme,   onRefresh,   postProcessBeanFactory,   setNamespace,   setServletConfig,   setServletContext
Methods from org.springframework.context.support.AbstractRefreshableConfigApplicationContext:
afterPropertiesSet,   getConfigLocations,   getDefaultConfigLocations,   resolvePath,   setBeanName,   setConfigLocation,   setConfigLocations,   setId
Methods from org.springframework.context.support.AbstractRefreshableApplicationContext:
closeBeanFactory,   createBeanFactory,   customizeBeanFactory,   getBeanFactory,   hasBeanFactory,   loadBeanDefinitions,   refreshBeanFactory,   setAllowBeanDefinitionOverriding,   setAllowCircularReferences
Methods from org.springframework.context.support.AbstractApplicationContext:
addApplicationListener,   addBeanFactoryPostProcessor,   addListener,   cancelRefresh,   close,   closeBeanFactory,   containsBean,   containsBeanDefinition,   containsLocalBean,   destroy,   destroyBeans,   doClose,   finishBeanFactoryInitialization,   finishRefresh,   getAliases,   getApplicationListeners,   getAutowireCapableBeanFactory,   getBean,   getBean,   getBean,   getBeanDefinitionCount,   getBeanDefinitionNames,   getBeanFactory,   getBeanFactoryPostProcessors,   getBeanNamesForType,   getBeanNamesForType,   getBeansOfType,   getBeansOfType,   getDisplayName,   getId,   getInternalParentBeanFactory,   getInternalParentMessageSource,   getMessage,   getMessage,   getMessage,   getParent,   getParentBeanFactory,   getResourcePatternResolver,   getResources,   getStartupDate,   getType,   initApplicationEventMulticaster,   initMessageSource,   invokeBeanFactoryPostProcessors,   isActive,   isPrototype,   isRunning,   isSingleton,   isTypeMatch,   obtainFreshBeanFactory,   onClose,   onRefresh,   postProcessBeanFactory,   prepareBeanFactory,   prepareRefresh,   publishEvent,   refresh,   refreshBeanFactory,   registerBeanPostProcessors,   registerListeners,   registerShutdownHook,   setDisplayName,   setId,   setParent,   start,   stop,   toString
Methods from org.springframework.core.io.DefaultResourceLoader:
getClassLoader,   getResource,   getResourceByPath,   setClassLoader
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.springframework.web.context.support.XmlWebApplicationContext Detail:
 protected String[] getDefaultConfigLocations() 
    The default location for the root context is "/WEB-INF/applicationContext.xml", and "/WEB-INF/test-servlet.xml" for a context with the namespace "test-servlet" (like for a DispatcherServlet instance with the servlet-name "test").
 protected  void initBeanDefinitionReader(XmlBeanDefinitionReader beanDefinitionReader) 
    Initialize the bean definition reader used for loading the bean definitions of this context. Default implementation is empty.

    Can be overridden in subclasses, e.g. for turning off XML validation or using a different XmlBeanDefinitionParser implementation.

 protected  void loadBeanDefinitions(DefaultListableBeanFactory beanFactory) throws IOException 
    Loads the bean definitions via an XmlBeanDefinitionReader.
 protected  void loadBeanDefinitions(XmlBeanDefinitionReader reader) throws BeansException, IOException 
    Load the bean definitions with the given XmlBeanDefinitionReader.

    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.