org.springframework.context.support
Class FileSystemXmlApplicationContext

java.lang.Object
  extended byorg.springframework.core.io.DefaultResourceLoader
      extended byorg.springframework.context.support.AbstractApplicationContext
          extended byorg.springframework.context.support.AbstractXmlApplicationContext
              extended byorg.springframework.context.support.FileSystemXmlApplicationContext
All Implemented Interfaces:
ApplicationContext, BeanFactory, ConfigurableApplicationContext, HierarchicalBeanFactory, ListableBeanFactory, MessageSource, ResourceLoader

public class FileSystemXmlApplicationContext
extends AbstractXmlApplicationContext

Standalone XML application context, taking the context definition files from the file system or from URLs. Mainly useful for test harnesses, but also for standalone environments.

Treats resource paths as file system resources, when using ApplicationContext.getResource. Resource paths are considered relative to the current VM working directory, even if they start with a slash.

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.

Author:
Rod Johnson, Juergen Hoeller
See Also:
DefaultResourceLoader.getResource(java.lang.String), getResourceByPath(java.lang.String)

Field Summary
 
Fields inherited from class org.springframework.context.support.AbstractApplicationContext
logger, MESSAGE_SOURCE_BEAN_NAME
 
Fields inherited from interface org.springframework.core.io.ResourceLoader
CLASSPATH_URL_PREFIX
 
Constructor Summary
FileSystemXmlApplicationContext(java.lang.String configLocation)
          Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML file.
FileSystemXmlApplicationContext(java.lang.String[] configLocations)
          Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML files.
FileSystemXmlApplicationContext(java.lang.String[] configLocations, ApplicationContext parent)
          Create a new FileSystemXmlApplicationContext with the given parent, loading the definitions from the given XML files.
 
Method Summary
protected  java.lang.String[] getConfigLocations()
          Return an array of resource locations, referring to the XML bean definition files that this context should be built with.
protected  Resource getResourceByPath(java.lang.String path)
          Resolve resource paths as file system paths.
 
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, getDisplayName, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getStartupDate, isSingleton, onRefresh, postProcessBeanFactory, publishEvent, refresh, setDisplayName, setParent, toString
 
Methods inherited from class org.springframework.core.io.DefaultResourceLoader
getResource
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.springframework.core.io.ResourceLoader
getResource
 

Constructor Detail

FileSystemXmlApplicationContext

public FileSystemXmlApplicationContext(java.lang.String configLocation)
                                throws BeansException
Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML file.

Parameters:
configLocation - file path

FileSystemXmlApplicationContext

public FileSystemXmlApplicationContext(java.lang.String[] configLocations)
                                throws BeansException
Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML files.

Parameters:
configLocations - array of file paths

FileSystemXmlApplicationContext

public FileSystemXmlApplicationContext(java.lang.String[] configLocations,
                                       ApplicationContext parent)
                                throws BeansException
Create a new FileSystemXmlApplicationContext with the given parent, loading the definitions from the given XML files.

Parameters:
configLocations - array of file paths
parent - the parent context
Method Detail

getConfigLocations

protected java.lang.String[] getConfigLocations()
Description copied from class: AbstractXmlApplicationContext
Return an array of resource locations, referring to the XML bean definition files that this context should be built with.

Specified by:
getConfigLocations in class AbstractXmlApplicationContext
Returns:
an array of resource locations, or null if none

getResourceByPath

protected Resource getResourceByPath(java.lang.String path)
Resolve resource paths as file system paths.

Note: Even if a given path starts with a slash, it will get interpreted as relative to the current VM working directory. This is consisted with the semantics in a Servlet container.

Overrides:
getResourceByPath in class DefaultResourceLoader
Parameters:
path - path to the resource
Returns:
Resource handle
See Also:
ClassPathResource, getResourceByPath(java.lang.String), XmlWebApplicationContext.getResourceByPath(java.lang.String)


Copyright (C) 2003-2004 The Spring Framework Project.