インターフェース WebMvcConfigurer
@EnableWebMvc を介して有効化された Spring MVC の Java ベースの構成をカスタマイズするためのコールバックメソッドを定義します。@EnableWebMvc - アノテーション付きの構成クラスは、このインターフェースを実装してコールバックし、デフォルト構成をカスタマイズする機会を与えられます。
- 導入:
- 3.1
- 作成者:
- Rossen Stoyanchev, Keith Donald, David Syer
メソッドのサマリー
修飾子と型メソッド説明default voidaddArgumentResolvers(ListSE<HandlerMethodArgumentResolver> resolvers) リゾルバーを追加して、カスタムコントローラーメソッドの引数型をサポートします。default voidaddCorsMappings(CorsRegistry registry) 「グローバル」クロスオリジンリクエスト処理を設定します。default voidaddErrorResponseInterceptors(ListSE<ErrorResponse.Interceptor> interceptors) RFC 9457ProblemDetailエラーレスポンスをレンダリングするときに適用するErrorResponse.Interceptorのリストに追加します。default voidaddFormatters(FormatterRegistry registry) デフォルトで登録されているものに加えて、ConvertersおよびFormattersを追加します。default voidaddInterceptors(InterceptorRegistry registry) コントローラーメソッド呼び出しとリソースハンドラーリクエストの前後処理用に Spring MVC ライフサイクルインターセプターを追加します。default voidaddResourceHandlers(ResourceHandlerRegistry registry) Web アプリケーションルート、クラスパスなどの特定の場所からイメージ、js、css ファイルなどの静的リソースを提供するハンドラーを追加します。default voidカスタムコントローラーメソッドの戻り値の型をサポートするハンドラーを追加します。default voidaddViewControllers(ViewControllerRegistry registry) レスポンスステータスコードおよび / またはビューで事前構成された単純な自動コントローラーを構成して、レスポンス本文をレンダリングします。default voidconfigureApiVersioning(ApiVersionConfigurer configurer) アプリケーションの API バージョン管理を構成します。default voidconfigureAsyncSupport(AsyncSupportConfigurer configurer) 非同期リクエスト処理オプションを構成します。default voidコンテンツネゴシエーションオプションを構成します。default voidサーブレットコンテナーの "default" サーブレットに転送して、未処理のリクエストを委譲するハンドラーを設定します。default void例外リゾルバーを構成します。default voidconfigureMessageConverters(ListSE<HttpMessageConverter<?>> converters) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。default void構築中のHttpMessageConvertersインスタンスを構成します。default voidconfigurePathMatch(PathMatchConfigurer configurer) 解析済みPathPatternsまたはPathMatcherでの文字列パターンマッチングを使用するかどうか、末尾のスラッシュを一致させるかどうかなど、HandlerMappingパスマッチングオプションの構成を支援します。default voidconfigureViewResolvers(ViewResolverRegistry registry) ビューリゾルバーを構成して、コントローラーから返された文字列ベースのビュー名を、レンダリングを実行する具体的なView実装に変換します。default voidデフォルトで構成された例外リゾルバーのリストを拡張または変更します。default voidextendMessageConverters(ListSE<HttpMessageConverter<?>> converters) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。7.0 以降、configureMessageConverters(HttpMessageConverters.ServerBuilder)のコンバーターの構成を推奨default @Nullable MessageCodesResolverデータバインディングおよび検証エラーコードからメッセージコードを構築するためのカスタムMessageCodesResolverを提供します。デフォルトで作成されたものではなく、カスタムValidatorを提供します。
メソッドの詳細
configurePathMatch
解析済みPathPatternsまたはPathMatcherでの文字列パターンマッチングを使用するかどうか、末尾のスラッシュを一致させるかどうかなど、HandlerMappingパスマッチングオプションの構成を支援します。- 導入:
- 4.0.3
- 関連事項:
configureContentNegotiation
コンテンツネゴシエーションオプションを構成します。configureApiVersioning
アプリケーションの API バージョン管理を構成します。バージョン管理を有効にするには、リクエストから API バージョンを解決する方法 (リクエストヘッダー経由など) を少なくとも 1 つ構成する必要があります。- 導入:
- 7.0
configureAsyncSupport
非同期リクエスト処理オプションを構成します。configureDefaultServletHandling
サーブレットコンテナーの "default" サーブレットに転送して、未処理のリクエストを委譲するハンドラーを設定します。これの一般的な使用例は、DispatcherServletが "/" にマップされ、サーブレットコンテナーの静的リソースのデフォルトの処理がオーバーライドされる場合です。addFormatters
デフォルトで登録されているものに加えて、ConvertersおよびFormattersを追加します。addInterceptors
コントローラーメソッド呼び出しとリソースハンドラーリクエストの前後処理用に Spring MVC ライフサイクルインターセプターを追加します。インターセプターは、すべてのリクエストに適用するか、URL パターンのサブセットに限定するように登録できます。addResourceHandlers
Web アプリケーションルート、クラスパスなどの特定の場所からイメージ、js、css ファイルなどの静的リソースを提供するハンドラーを追加します。- 関連事項:
addCorsMappings
「グローバル」クロスオリジンリクエスト処理を設定します。構成された CORS マッピングは、アノテーション付きコントローラー、関数エンドポイント、静的リソースに適用されます。アノテーション付きコントローラーは、
@CrossOriginを介してさらにきめ細かい構成を宣言できます。このような場合、ここで宣言される「グローバル」CORS 構成は、コントローラーメソッドで定義されたローカル CORS 構成を持つcombinedです。- 導入:
- 4.2
- 関連事項:
addViewControllers
レスポンスステータスコードやレスポンス本文をレンダリングするビューが事前に構成された、シンプルな自動コントローラーを構成します。これは、カスタムコントローラーロジックが必要ない場合に役立ちます。たとえば、ホームページをレンダリングしたり、シンプルなサイト URL リダイレクトを実行したり、HTML コンテンツを含む 404 ステータスやコンテンツなしの 204 ステータスを返すなどです。- 関連事項:
configureViewResolvers
ビューリゾルバーを構成して、コントローラーから返された文字列ベースのビュー名を、レンダリングを実行する具体的なView実装に変換します。- 導入:
- 4.1
addArgumentResolvers
リゾルバーを追加して、カスタムコントローラーメソッドの引数型をサポートします。これは、ハンドラーメソッドの引数を解決するための組み込みサポートをオーバーライドしません。引数解決の組み込みサポートをカスタマイズするには、
RequestMappingHandlerAdapterを直接構成します。- パラメーター:
resolvers- 最初は空のリスト
addReturnValueHandlers
カスタムコントローラーメソッドの戻り値の型をサポートするハンドラーを追加します。このオプションを使用しても、戻り値を処理するための組み込みのサポートは無効になりません。戻り値を処理するための組み込みサポートをカスタマイズするには、RequestMappingHandlerAdapter を直接構成します。
- パラメーター:
handlers- 最初は空のリスト
configureMessageConverters
構築中のHttpMessageConvertersインスタンスを構成します。- パラメーター:
builder- 構成するビルダー- 導入:
- 7.0
configureMessageConverters
@DeprecatedSE(since="7.0", forRemoval=true) default void configureMessageConverters(ListSE<HttpMessageConverter<?>> converters) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。7.0 以降、configureMessageConverters(HttpMessageConverters.ServerBuilder)のコンバーターの構成を推奨HttpMessageConverterを、リクエスト本文からの読み取りとレスポンス本文への書き込み用に構成します。デフォルトでは、Jackson JSON、JAXB2 などの対応するサードパーティライブラリがクラスパスに存在する限り、すべての組み込みコンバーターが構成されます。
このメソッドを使用すると、デフォルトのコンバーターの登録がオフになることに注意してください。ただし、Spring Boot アプリケーションでは、
WebMvcAutoConfigurationによってHttpMessageConverterBean とデフォルトのコンバーターが追加されます。Boot アプリケーションでは HttpMessageConverters を使用します。あるいは、どのようなシナリオでも、extendMessageConverters(java.util.List)を使用してメッセージコンバーターの構成済みリストを変更します。- パラメーター:
converters- 最初は空のコンバーターのリスト
extendMessageConverters
@DeprecatedSE(since="7.0", forRemoval=true) default void extendMessageConverters(ListSE<HttpMessageConverter<?>> converters) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。7.0 以降、configureMessageConverters(HttpMessageConverters.ServerBuilder)のコンバーターの構成を推奨configuredまたはデフォルトリストで初期化された後に、コンバーターのリストを拡張または変更します。コンバーターの登録順序が重要であることに注意してください。特に、クライアントが
MediaType.ALLを受け入れる場合は、以前に構成されたコンバーターが優先されます。- パラメーター:
converters- 拡張する構成済みコンバーターのリスト- 導入:
- 4.1.3
configureHandlerExceptionResolvers
例外リゾルバーを構成します。指定されたリストは空で始まります。空のままにすると、フレームワークはデフォルトのリゾルバーのセットを構成します。
WebMvcConfigurationSupport.addDefaultHandlerExceptionResolvers(List, org.springframework.web.accept.ContentNegotiationManager)を参照してください。または、例外リゾルバーがリストに追加された場合、アプリケーションが効果的に引き継ぎ、完全に初期化された例外リゾルバーを提供する必要があります。あるいは、
extendHandlerExceptionResolvers(List)を使用して、デフォルトで構成された例外リゾルバーのリストを継承または変更できます。- パラメーター:
resolvers- 最初は空のリスト- 関連事項:
extendHandlerExceptionResolvers
デフォルトで構成された例外リゾルバーのリストを拡張または変更します。これは、デフォルトの例外リゾルバーを妨げることなく、カスタム例外リゾルバーを挿入できます。- パラメーター:
resolvers- 拡張する構成済みリゾルバーのリスト- 導入:
- 4.3
- 関連事項:
addErrorResponseInterceptors
RFC 9457ProblemDetailエラーレスポンスをレンダリングするときに適用するErrorResponse.Interceptorのリストに追加します。- パラメーター:
interceptors- 使用する迎撃機- 導入:
- 6.2
getValidator
デフォルトで作成されたものではなく、カスタムValidatorを提供します。JSR-303 がクラスパス上にあると仮定した場合のデフォルトの実装は、OptionalValidatorFactoryBeanです。戻り値をnullのままにして、デフォルトのままにします。getMessageCodesResolver
データバインディングおよび検証エラーコードからメッセージコードを構築するためのカスタムMessageCodesResolverを提供します。戻り値をnullのままにして、デフォルトのままにします。
configureMessageConverters(HttpMessageConverters.ServerBuilder)のコンバーターの構成を推奨