クラス AbstractErrorWebExceptionHandler
java.lang.ObjectSE
org.springframework.boot.webflux.autoconfigure.error.AbstractErrorWebExceptionHandler
- 実装済みのインターフェース一覧:
InitializingBean, ErrorWebExceptionHandler, WebExceptionHandler
- 既知の直属サブクラス
DefaultErrorWebExceptionHandler
public abstract class AbstractErrorWebExceptionHandler
extends ObjectSE
implements ErrorWebExceptionHandler, InitializingBean
ErrorWebExceptionHandler 実装の抽象基本クラス。- 導入:
- 4.0.0
- 作成者:
- Brian Clozel, Scott Frederick, Moritz Halbritter
- 関連事項:
コンストラクター概要
コンストラクターコンストラクター説明AbstractErrorWebExceptionHandler(ErrorAttributes errorAttributes, WebProperties.Resources resources, ApplicationContext applicationContext) 新しいAbstractErrorWebExceptionHandlerを作成します。方法の概要
修飾子と型メソッド説明voidprotected @Nullable ThrowableSEgetError(ServerRequest request) 現在のリクエストから元のエラーを抽出します。getErrorAttributes(ServerRequest request, ErrorAttributeOptions options) 現在のリクエストからエラー属性を抽出し、エラービューまたは JSON ペイロードの入力に使用します。protected abstract RouterFunction<ServerResponse> getRoutingFunction(ErrorAttributes errorAttributes) JSON レスポンスまたは HTML ビューとしてエラーをルーティングおよび処理できるRouterFunctionを作成します。reactor.core.publisher.Mono<VoidSE> handle(ServerWebExchange exchange, ThrowableSE throwable) protected booleanisBindingErrorsEnabled(ServerRequest request) 指定されたリクエストでエラー属性が設定されているかどうかを確認します。protected booleanisMessageEnabled(ServerRequest request) 指定されたリクエストにメッセージ属性が設定されているかどうかを確認します。protected booleanisPathEnabled(ServerRequest request) 指定されたリクエストにパス属性が設定されているかどうかを確認します。protected booleanisTraceEnabled(ServerRequest request) 指定されたリクエストにトレース属性が設定されているかどうかを確認します。protected voidlogError(ServerRequest request, ServerResponse response, ThrowableSE throwable) 指定されたrequestおよびresponse交換のthrowableエラーをログに記録します。protected reactor.core.publisher.Mono<ServerResponse> renderDefaultErrorView(ServerResponse.BodyBuilder responseBody, MapSE<StringSE, @Nullable ObjectSE> error) デフォルトの HTML「ホワイトラベルエラーページ」をレンダリングします。protected reactor.core.publisher.Mono<ServerResponse> renderErrorView(StringSE viewName, ServerResponse.BodyBuilder responseBody, MapSE<StringSE, @Nullable ObjectSE> error) 使用可能な場合はテンプレートビューを使用し、使用可能な場合は静的 HTML ファイルを使用して、指定されたエラーデータをビューとしてレンダリングします。voidsetMessageReaders(ListSE<HttpMessageReader<?>> messageReaders) HTTP メッセージリーダーを構成して、リクエスト本文を逆直列化します。voidsetMessageWriters(ListSE<HttpMessageWriter<?>> messageWriters) HTTP メッセージライターを構成して、レスポンス本文を直列化します。voidsetViewResolvers(ListSE<ViewResolver> viewResolvers) ビューのレンダリングに使用するようにViewResolverを構成します。
コンストラクターの詳細
AbstractErrorWebExceptionHandler
public AbstractErrorWebExceptionHandler(ErrorAttributes errorAttributes, WebProperties.Resources resources, ApplicationContext applicationContext) 新しいAbstractErrorWebExceptionHandlerを作成します。- パラメーター:
errorAttributes- エラー属性resources- リソース構成プロパティapplicationContext- アプリケーションコンテキスト
方法の詳細
setMessageWriters
HTTP メッセージライターを構成して、レスポンス本文を直列化します。- パラメーター:
messageWriters- 使用するHttpMessageWriter
setMessageReaders
HTTP メッセージリーダーを構成して、リクエスト本文を逆直列化します。- パラメーター:
messageReaders- 使用するHttpMessageReader
setViewResolvers
ビューのレンダリングに使用するようにViewResolverを構成します。- パラメーター:
viewResolvers- 使用するViewResolverのリスト
getErrorAttributes
protected MapSE<StringSE, @Nullable ObjectSE> getErrorAttributes(ServerRequest request, ErrorAttributeOptions options) 現在のリクエストからエラー属性を抽出し、エラービューまたは JSON ペイロードの入力に使用します。- パラメーター:
request- ソースリクエストoptions- エラー属性を制御するオプション- 戻り値:
- マップとしてのエラー属性
getError
現在のリクエストから元のエラーを抽出します。- パラメーター:
request- ソースリクエスト- 戻り値:
- エラー
isTraceEnabled
指定されたリクエストにトレース属性が設定されているかどうかを確認します。- パラメーター:
request- ソースリクエスト- 戻り値:
- エラートレースがリクエストされた場合は
true、そうでない場合はfalse
isMessageEnabled
指定されたリクエストにメッセージ属性が設定されているかどうかを確認します。- パラメーター:
request- ソースリクエスト- 戻り値:
- メッセージ属性がリクエストされている場合は
true、それ以外の場合はfalse
isBindingErrorsEnabled
指定されたリクエストでエラー属性が設定されているかどうかを確認します。- パラメーター:
request- ソースリクエスト- 戻り値:
- エラー属性がリクエストされている場合は
true、それ以外の場合はfalse
isPathEnabled
指定されたリクエストにパス属性が設定されているかどうかを確認します。- パラメーター:
request- ソースリクエスト- 戻り値:
- パス属性がリクエストされた場合は
true、それ以外の場合はfalse
renderErrorView
protected reactor.core.publisher.Mono<ServerResponse> renderErrorView(StringSE viewName, ServerResponse.BodyBuilder responseBody, MapSE<StringSE, @Nullable ObjectSE> error) 使用可能な場合はテンプレートビューを使用し、使用可能な場合は静的 HTML ファイルを使用して、指定されたエラーデータをビューとしてレンダリングします。上記のいずれも使用できない場合、空のPublisherが返されます。- パラメーター:
viewName- ビュー名responseBody- 構築中のエラーレスポンスerror- エラーデータをマップとして- 戻り値:
ServerResponseの発行者
renderDefaultErrorView
protected reactor.core.publisher.Mono<ServerResponse> renderDefaultErrorView(ServerResponse.BodyBuilder responseBody, MapSE<StringSE, @Nullable ObjectSE> error) デフォルトの HTML「ホワイトラベルエラーページ」をレンダリングします。アプリケーションで他のエラービューが利用できない場合に役立ちます。
- パラメーター:
responseBody- 構築中のエラーレスポンスerror- エラーデータをマップとして- 戻り値:
ServerResponseの発行者
afterPropertiesSet
- 次で指定:
- インターフェース
InitializingBean内のafterPropertiesSet - 例外:
ExceptionSE
getRoutingFunction
protected abstract RouterFunction<ServerResponse> getRoutingFunction(ErrorAttributes errorAttributes) JSON レスポンスまたは HTML ビューとしてエラーをルーティングおよび処理できるRouterFunctionを作成します。返された
RouterFunctionがHandlerFunctionにルーティングされない場合、元の例外はパイプラインに伝搬され、他のWebExceptionHandlerによって処理できます。- パラメーター:
errorAttributes- エラー情報を抽出するために使用するErrorAttributesインスタンス- 戻り値:
- エラーをルーティングして処理する
RouterFunction
handle
public reactor.core.publisher.Mono<VoidSE> handle(ServerWebExchange exchange, ThrowableSE throwable) - 次で指定:
- インターフェース
WebExceptionHandler内のhandle
logError
指定されたrequestおよびresponse交換のthrowableエラーをログに記録します。デフォルトの実装では、デバッグレベルですべてのエラーがログに記録されます。さらに、内部サーバーエラー (500) はエラーレベルで記録されます。- パラメーター:
request- 処理されていたリクエストresponse- 送信されていたレスポンスthrowable- ログに記録されるエラー