public class XmlWebApplicationContext extends AbstractRefreshableWebApplicationContext
XmlBeanDefinitionReader
が理解する XML ドキュメントから構成を取得する WebApplicationContext
実装。これは、本質的に Web 環境の GenericXmlApplicationContext
と同等です。デフォルトでは、構成はルートコンテキストの場合は "/WEB-INF/applicationContext.xml" から取得され、名前空間が "test-servlet" のコンテキストの場合は "/WEB-INF/test-servlet.xml" から取得されます(サーブレット名が "test" の DispatcherServlet インスタンスの場合など)。
構成場所のデフォルトは、ContextLoader
の "contextConfigLocation" コンテキストパラメーターと FrameworkServlet
のサーブレット init-param を介して上書きできます。構成場所は、"/WEB-INF/context.xml" のような具体的なファイル、または "/WEB-INF/*-context.xml" のような Ant スタイルのパターンを示すことができます (パターンの詳細については、PathMatcher
javadoc を参照してください)。
メモ: 複数の構成ロケーションがある場合、後の Bean 定義は、以前にロードされたファイルで定義されたものをオーバーライドします。これを活用して、追加の XML ファイルを介して特定の Bean 定義を意図的にオーバーライドできます。
異なる Bean 定義形式を読み込む WebApplicationContext の場合は、AbstractRefreshableWebApplicationContext
の類似のサブクラスを作成します。このようなコンテキスト実装は、ContextLoader の場合は "contextClass" context-param、FrameworkServlet の場合は "contextClass" init-param として指定できます。
AbstractRefreshableWebApplicationContext.setNamespace(java.lang.String)
, AbstractRefreshableConfigApplicationContext.setConfigLocations(java.lang.String...)
, XmlBeanDefinitionReader
, ContextLoader.initWebApplicationContext(javax.servlet.ServletContext)
, FrameworkServlet.initWebApplicationContext()
DefaultResourceLoader.ClassPathContextResource
修飾子と型 | フィールドと説明 |
---|---|
static StringSE | DEFAULT_CONFIG_LOCATION ルートコンテキストのデフォルトの設定場所。 |
static StringSE | DEFAULT_CONFIG_LOCATION_PREFIX 名前空間の設定場所を構築するためのデフォルトのプレフィックス。 |
static StringSE | 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_REQUEST, SCOPE_SESSION, SERVLET_CONTEXT_BEAN_NAME
APPLICATION_STARTUP_BEAN_NAME, CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SHUTDOWN_HOOK_THREAD_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAME
FACTORY_BEAN_PREFIX
CLASSPATH_ALL_URL_PREFIX
CLASSPATH_URL_PREFIX
コンストラクターと説明 |
---|
XmlWebApplicationContext() |
修飾子と型 | メソッドと説明 |
---|---|
protected StringSE[] | getDefaultConfigLocations() ルートコンテキストのデフォルトの場所は "/WEB-INF/applicationContext.xml" であり、名前空間が "test-servlet" のコンテキストの場合は "/WEB-INF/test-servlet.xml" です(サーブレット名が "test" の DispatcherServlet インスタンスの場合など)。 |
protected void | initBeanDefinitionReader(XmlBeanDefinitionReader beanDefinitionReader) このコンテキストの Bean 定義をロードするために使用される Bean 定義リーダーを初期化します。 |
protected void | loadBeanDefinitions(DefaultListableBeanFactory beanFactory) XmlBeanDefinitionReader を介して Bean 定義をロードします。 |
protected void | loadBeanDefinitions(XmlBeanDefinitionReader reader) 指定された XmlBeanDefinitionReader で Bean 定義をロードします。 |
createEnvironment, getApplicationName, getConfigLocations, getNamespace, getResourceByPath, getResourcePatternResolver, getServletConfig, getServletContext, getTheme, initPropertySources, onRefresh, postProcessBeanFactory, setNamespace, setServletConfig, setServletContext
afterPropertiesSet, resolvePath, setBeanName, setConfigLocation, setConfigLocations, setId
assertBeanFactoryActive, cancelRefresh, closeBeanFactory, createBeanFactory, customizeBeanFactory, getBeanFactory, hasBeanFactory, refreshBeanFactory, setAllowBeanDefinitionOverriding, setAllowCircularReferences
addApplicationListener, addBeanFactoryPostProcessor, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, doClose, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationStartup, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResources, getStartupDate, getType, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, prepareBeanFactory, prepareRefresh, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, resetCommonCaches, setApplicationStartup, setDisplayName, setEnvironment, setParent, start, stop, toString
addProtocolResolver, clearResourceCaches, getClassLoader, getProtocolResolvers, getResource, getResourceCache, setClassLoader
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
setConfigLocation, setConfigLocations
addApplicationListener, addBeanFactoryPostProcessor, addProtocolResolver, close, getApplicationStartup, getBeanFactory, getEnvironment, isActive, refresh, registerShutdownHook, setApplicationStartup, setClassLoader, setEnvironment, setId, setParent
getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDate
containsBeanDefinition, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation
containsLocalBean, getParentBeanFactory
containsBean, getAliases, getBean, getBean, getBean, getBean, getBean, getBeanProvider, getBeanProvider, getType, getType, isPrototype, isSingleton, isTypeMatch, isTypeMatch
getMessage, getMessage, getMessage
publishEvent, publishEvent
getResources
getClassLoader, getResource
public static final StringSE DEFAULT_CONFIG_LOCATION
public static final StringSE DEFAULT_CONFIG_LOCATION_PREFIX
protected void loadBeanDefinitions(DefaultListableBeanFactory beanFactory) throws BeansException, IOExceptionSE
AbstractRefreshableApplicationContext
の loadBeanDefinitions
beanFactory
- Bean 定義をロードする Bean ファクトリ BeansException
- Bean 定義の解析が失敗した場合 IOExceptionSE
- Bean 定義ファイルのロードが失敗した場合 XmlBeanDefinitionReader
, initBeanDefinitionReader(org.springframework.beans.factory.xml.XmlBeanDefinitionReader)
, loadBeanDefinitions(org.springframework.beans.factory.support.DefaultListableBeanFactory)
protected void initBeanDefinitionReader(XmlBeanDefinitionReader beanDefinitionReader)
サブクラスでオーバーライドできます。XML 検証をオフにするか、別の XmlBeanDefinitionParser 実装を使用します。
beanDefinitionReader
- このコンテキストで使用される Bean 定義リーダー XmlBeanDefinitionReader.setValidationMode(int)
, XmlBeanDefinitionReader.setDocumentReaderClass(java.lang.Class<? extends org.springframework.beans.factory.xml.BeanDefinitionDocumentReader>)
protected void loadBeanDefinitions(XmlBeanDefinitionReader reader) throws IOExceptionSE
Bean ファクトリのライフサイクルは refreshBeanFactory メソッドによって処理されるため、このメソッドは Bean 定義をロードおよび / または登録することだけを目的としています。
ロケーションパターンをリソースインスタンスに解決するための ResourcePatternResolver へのデリゲート。
protected StringSE[] getDefaultConfigLocations()
AbstractRefreshableConfigApplicationContext
の getDefaultConfigLocations
AbstractRefreshableConfigApplicationContext.setConfigLocations(java.lang.String...)