クラス AbstractGenericWebContextLoader
- 実装されているすべてのインターフェース:
- AotContextLoader、- ContextLoader、- SmartContextLoader
GenericWebApplicationContext をロードする AbstractContextLoader の抽象、汎用拡張。 具象サブクラスのインスタンスが SmartContextLoader SPI を介して呼び出される場合、コンテキストは loadContext(MergedContextConfiguration) に提供される MergedContextConfiguration からロードされます。そのような場合、SmartContextLoader は、場所またはアノテーション付きクラスからコンテキストをロードするかどうかを決定します。 AbstractGenericWebContextLoader は、レガシー ContextLoader SPI の  loadContext(String... locations) メソッドをサポートしないことに注意してください。
 具象サブクラスは、loadBeanDefinitions(org.springframework.web.context.support.GenericWebApplicationContext, org.springframework.test.context.web.WebMergedContextConfiguration) の適切な実装を提供する必要があります。
- 導入:
- 3.2
- 作成者:
- Sam Brannen, Phillip Webb
- 関連事項:
- フィールドのサマリーフィールド
- コンストラクターの概要コンストラクター
- メソッドのサマリー修飾子と型メソッド説明- protected void- configureWebResources- (GenericWebApplicationContext context, WebMergedContextConfiguration webMergedConfig) 提供された Web アプリケーションコンテキスト(WAC)の Web リソースを構成します。- protected GenericWebApplicationContextこの- ContextLoaderで使用される- GenericWebApplicationContextを作成するためのファクトリメソッド。- protected void- customizeBeanFactory- (DefaultListableBeanFactory beanFactory, WebMergedContextConfiguration webMergedConfig) このコンテキストローダーによって作成された- WebApplicationContextの内部 Bean ファクトリをカスタマイズします。- protected void- customizeContext- (GenericWebApplicationContext context, WebMergedContextConfiguration webMergedConfig) Bean 定義がコンテキストにロードされた後でコンテキストがリフレッシュされる前に、この文脈ローダーによって作成された- GenericWebApplicationContextをカスタマイズします。- protected abstract void- loadBeanDefinitions- (GenericWebApplicationContext context, WebMergedContextConfiguration webMergedConfig) 提供された- WebMergedContextConfigurationの場所またはクラスから、提供された- contextに Bean 定義をロードします。- final ApplicationContext- loadContext- (StringSE... locations) - final ApplicationContext- loadContext- (MergedContextConfiguration mergedConfig) 提供された- MergedContextConfigurationの- GenericWebApplicationContextをロードします。- loadContextForAotProcessing- (MergedContextConfiguration mergedConfig) 提供された- MergedContextConfigurationに基づいて、AOT ビルド時の処理のために- GenericWebApplicationContextをロードします。- loadContextForAotRuntime- (MergedContextConfiguration mergedConfig, ApplicationContextInitializer<ConfigurableApplicationContext> initializer) 提供された- MergedContextConfigurationおよび- ApplicationContextInitializerに基づいて、AOT ランタイム実行用に- GenericWebApplicationContextをロードします。- protected voidこのコンテキストローダーがサポートするものに関して、提供された- WebMergedContextConfigurationを検証します。- クラス org.springframework.test.context.support.AbstractContextLoader から継承されたメソッド- customizeContext, generateDefaultLocations, getResourceSuffix, getResourceSuffixes, isGenerateDefaultLocations, modifyLocations, prepareContext, processContextConfiguration, processLocations- クラス java.lang.ObjectSE から継承されたメソッド- clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE- インターフェース org.springframework.test.context.SmartContextLoader から継承されたメソッド- processContextConfiguration, processLocations
- フィールドの詳細- logger
 
- コンストラクターの詳細- AbstractGenericWebContextLoaderpublic AbstractGenericWebContextLoader()
 
- メソッドの詳細- loadContextpublic final ApplicationContext loadContext- (MergedContextConfiguration mergedConfig) throws ExceptionSE 提供された- MergedContextConfigurationの- GenericWebApplicationContextをロードします。- 実装の詳細: - validateMergedContextConfiguration(WebMergedContextConfiguration)を呼び出して、サブクラスが続行する前に指定された構成を検証できるようにします。
- GenericWebApplicationContextインスタンスを作成します。
-  指定された MergedContextConfigurationが親構成を参照する場合、対応するApplicationContextが取得され、このメソッドによって作成されたコンテキストの親として設定されます。
- MockServletContextを作成して- WebApplicationContextに設定するには、- configureWebResources(org.springframework.web.context.support.GenericWebApplicationContext, org.springframework.test.context.web.WebMergedContextConfiguration)に委譲します。
- AbstractContextLoader.prepareContext(org.springframework.context.ConfigurableApplicationContext, org.springframework.test.context.MergedContextConfiguration)を呼び出して、Bean 定義がロードされる前にコンテキストをカスタマイズできるようにします。
- customizeBeanFactory(org.springframework.beans.factory.support.DefaultListableBeanFactory, org.springframework.test.context.web.WebMergedContextConfiguration)を呼び出して、コンテキストの- DefaultListableBeanFactoryをカスタマイズできるようにします。
- loadBeanDefinitions(org.springframework.web.context.support.GenericWebApplicationContext, org.springframework.test.context.web.WebMergedContextConfiguration)にデリゲートして、提供された- MergedContextConfiguration内の場所またはクラスからコンテキストを設定します。
-  アノテーション構成プロセッサーを登録するための AnnotationConfigUtilsへのデリゲート。
- customizeContext(org.springframework.web.context.support.GenericWebApplicationContext, org.springframework.test.context.web.WebMergedContextConfiguration)を呼び出して、リフレッシュされる前にコンテキストをカスタマイズできるようにします。
- Refreshesコンテキストとそのための JVM シャットダウンフックを登録します。
 - 次で指定:
-  インターフェース SmartContextLoaderのloadContext
- パラメーター:
- mergedConfig- アプリケーションコンテキストをロードするために使用するマージされたコンテキスト構成
- 戻り値:
- 新しい Web アプリケーションコンテキスト
- 例外:
- ContextLoadException- コンテキストの読み込みに失敗した場合
- ExceptionSE
- 関連事項:
 
- loadContextForAotProcessingpublic final GenericWebApplicationContext loadContextForAotProcessing- (MergedContextConfiguration mergedConfig) throws ExceptionSE 提供された- MergedContextConfigurationに基づいて、AOT ビルド時の処理のために- GenericWebApplicationContextをロードします。- loadContext(MergedContextConfiguration)とは対照的に、このメソッドは- ApplicationContextをリフレッシュしたり、JVM シャットダウンフックを登録したりしません。それ以外の場合、このメソッドは- loadContext(MergedContextConfiguration)と同じ動作を実装します。- 次で指定:
-  インターフェース AotContextLoaderのloadContextForAotProcessing
- パラメーター:
- mergedConfig- アプリケーションコンテキストをロードするために使用するマージされたコンテキスト構成
- 戻り値:
- 新しい Web アプリケーションコンテキスト
- 例外:
- ExceptionSE- コンテキストの読み込みに失敗した場合
- 導入:
- 6.0
- 関連事項:
 
- loadContextForAotRuntimepublic final GenericWebApplicationContext loadContextForAotRuntime- (MergedContextConfiguration mergedConfig, ApplicationContextInitializer<ConfigurableApplicationContext> initializer) throws ExceptionSE 提供された- MergedContextConfigurationおよび- ApplicationContextInitializerに基づいて、AOT ランタイム実行用に- GenericWebApplicationContextをロードします。- 次で指定:
-  インターフェース AotContextLoaderのloadContextForAotRuntime
- パラメーター:
- mergedConfig- アプリケーションコンテキストをロードするために使用するマージされたコンテキスト構成
- initializer- Bean 定義を再作成するためにコンテキストに適用する必要がある- ApplicationContextInitializer
- 戻り値:
- 新しい Web アプリケーションコンテキスト
- 例外:
- ExceptionSE- コンテキストの読み込みに失敗した場合
- 導入:
- 6.0
- 関連事項:
 
- validateMergedContextConfigurationこのコンテキストローダーがサポートするものに関して、提供された- WebMergedContextConfigurationを検証します。- デフォルトの実装はノーオペレーションですが、必要に応じてサブクラスによってオーバーライドできます。 - パラメーター:
- mergedConfig- 検証するマージされた構成
- 例外:
- IllegalStateExceptionSE- 指定された構成がこのコンテキストローダーに対して有効でない場合
- 導入:
- 4.0.4
 
- createContextこの- ContextLoaderで使用される- GenericWebApplicationContextを作成するためのファクトリメソッド。- デフォルトの実装では、デフォルトのコンストラクターを使用して - GenericWebApplicationContextを作成します。このメソッドはオーバーライドされる可能性があります。— たとえば、カスタムコンテキストサブクラスを使用したり、カスタム- DefaultListableBeanFactory実装で- GenericWebApplicationContextを作成したりします。- 戻り値:
-  新しくインスタンス化された GenericWebApplicationContext
- 導入:
- 5.3.23
 
- configureWebResourcesprotected void configureWebResources- (GenericWebApplicationContext context, WebMergedContextConfiguration webMergedConfig) 提供された Web アプリケーションコンテキスト(WAC)の Web リソースを構成します。- Implementation Details- 提供された WAC に親がない場合、またはその親が WAC でない場合、提供された WAC はルート WAC として構成されます(以下の「ルート WAC 構成」を参照)。 - そうでない場合、提供された WAC のコンテキスト階層がトラバースされて、最上位の WAC(つまり、ルート)が検出されます。ルート WAC の - ServletContextEE は、提供された WAC の- ServletContextとして設定されます。- Root WAC Configuration-  リソースのベースパスは、指定された WebMergedContextConfigurationから取得されます。
- ResourceLoaderは- MockServletContextに対してインスタンス化されます。リソースのベースパスの先頭に "- classpath:" が付いている場合、- DefaultResourceLoaderが使用されます。それ以外の場合は、- FileSystemResourceLoaderが使用されます。
- MockServletContextは、リソースベースパスとリソースローダーを使用して作成されます。
-  提供された GenericWebApplicationContextは、WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTEキーのMockServletContextに格納されます。
-  最後に、MockServletContextがWebApplicationContextに設定されます。
 - パラメーター:
- context- Web リソースを構成する Web アプリケーションコンテキスト
- webMergedConfig- Web アプリケーションコンテキストの読み込みに使用するマージされたコンテキスト構成
 
-  リソースのベースパスは、指定された 
- customizeBeanFactoryprotected void customizeBeanFactory- (DefaultListableBeanFactory beanFactory, WebMergedContextConfiguration webMergedConfig) このコンテキストローダーによって作成された- WebApplicationContextの内部 Bean ファクトリをカスタマイズします。- デフォルトの実装は空ですが、サブクラスでオーバーライドして、 - DefaultListableBeanFactoryの標準設定をカスタマイズできます。- パラメーター:
- beanFactory- このコンテキストローダーによって作成された Bean ファクトリ
- webMergedConfig- Web アプリケーションコンテキストの読み込みに使用するマージされたコンテキスト構成
- 関連事項:
- loadContext(MergedContextConfiguration)
- DefaultListableBeanFactory.setAllowBeanDefinitionOverriding(boolean)
- DefaultListableBeanFactory.setAllowEagerClassLoading(boolean)
- AbstractAutowireCapableBeanFactory.setAllowCircularReferences(boolean)
- AbstractAutowireCapableBeanFactory.setAllowRawInjectionDespiteWrapping(boolean)
 
 
- loadBeanDefinitionsprotected abstract void loadBeanDefinitions- (GenericWebApplicationContext context, WebMergedContextConfiguration webMergedConfig) 提供された- WebMergedContextConfigurationの場所またはクラスから、提供された- contextに Bean 定義をロードします。- 具象サブクラスは適切な実装を提供する必要があります。 - パラメーター:
- context- Bean 定義をロードする必要があるコンテキスト
- webMergedConfig- Web アプリケーションコンテキストの読み込みに使用するマージされたコンテキスト構成
- 関連事項:
 
- customizeContextprotected void customizeContext- (GenericWebApplicationContext context, WebMergedContextConfiguration webMergedConfig) Bean 定義がコンテキストにロードされた後でコンテキストがリフレッシュされる前に、この文脈ローダーによって作成された- GenericWebApplicationContextをカスタマイズします。- デフォルトの実装は、単に - AbstractContextLoader.customizeContext(ConfigurableApplicationContext, MergedContextConfiguration)に委譲するだけです。- パラメーター:
- context- 新しく作成された Web アプリケーションコンテキスト
- webMergedConfig- Web アプリケーションコンテキストの読み込みに使用するマージされたコンテキスト構成
- 関連事項:
 
- loadContext- AbstractGenericWebContextLoaderは、レガシー- ContextLoaderではなく、- SmartContextLoaderとして使用する必要があります。このメソッドはサポートされていません。- 次で指定:
-  インターフェース ContextLoaderのloadContext
- 次で指定:
-  インターフェース SmartContextLoaderのloadContext
- パラメーター:
- locations- アプリケーションコンテキストをロードするために使用するリソースの場所
- 戻り値:
- 新しいアプリケーションコンテキスト
- 例外:
- UnsupportedOperationExceptionSE- この実装
- ExceptionSE- コンテキストの読み込みに失敗した場合
- 関連事項: