クラス XmlWebApplicationContext

実装されたすべてのインターフェース:
CloseableSEAutoCloseableSEAwareBeanFactoryBeanNameAwareHierarchicalBeanFactoryInitializingBeanListableBeanFactoryApplicationContextApplicationEventPublisherConfigurableApplicationContextLifecycleMessageSourceEnvironmentCapableResourceLoaderResourcePatternResolverThemeSourceConfigurableWebApplicationContextWebApplicationContext

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" context-param および 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 として指定できます。

作成者:
Rod Johnson, Juergen Hoeller
関連事項: