インターフェース HandlerAdapter
- すべての既知の実装クラス:
HandlerFunctionAdapter
、RequestMappingHandlerAdapter
、SimpleHandlerAdapter
、WebSocketHandlerAdapter
public interface HandlerAdapter
特定の型のハンドラーの呼び出しの詳細を抽象化する契約。
実装では、リクエストがハンドラーに正常にマップされる前に発生する例外を処理する場合、DispatchExceptionHandler
のインスタンスになることもできます。これにより、HandlerAdapter
は、ハンドラー呼び出しエラーとハンドラーが選択される前のエラーの両方に対して同じ例外処理を公開できます。Reactive Streams の用語では、handle(org.springframework.web.server.ServerWebExchange, java.lang.Object)
は onNext シグナルを処理し、DispatchExceptionHandler.handleError(org.springframework.web.server.ServerWebExchange, java.lang.Throwable)
はディスパッチ処理 チェーンからの onError シグナルを処理します。
- 導入:
- 5.0
- 作成者:
- Rossen Stoyanchev, Sebastien Deleuze
メソッドのサマリー
修飾子と型メソッド説明reactor.core.publisher.Mono<HandlerResult>
handle
(ServerWebExchange exchange, ObjectSE handler) 以前にsupports(Object)
を介してチェックされた、指定されたハンドラーでリクエストを処理します。boolean
このHandlerAdapter
が指定されたhandler
をサポートするかどうか。
メソッドの詳細
supports
このHandlerAdapter
が指定されたhandler
をサポートするかどうか。- パラメーター:
handler
- チェックするハンドラーオブジェクト- 戻り値:
- ハンドラーがサポートされているかどうか
handle
以前にsupports(Object)
を介してチェックされた、指定されたハンドラーでリクエストを処理します。実装では、例外処理について次のことを考慮する必要があります。
- このメソッド内で呼び出し例外を処理します。
- 返された
HandlerResult
のSet an exception handler
は、非同期の戻り値からの遅延例外を処理し、レスポンスレンダリングからの例外を処理します。 DispatchExceptionHandler
を実装して、ハンドラーが選択される前に発生する例外に例外処理を継承します。
- パラメーター:
exchange
- 現在のサーバー交換handler
-supports(Object)
を介して事前にチェックされている必要がある選択されたハンドラー- 戻り値:
Mono
はHandlerResult
を発行するか、リクエストが完全に処理された場合は空になります。エラーシグナルはDispatcherHandler
内では処理されず、代わりにWebFilter
チェーンの最後で登録されたWebExceptionHandler
の チェーンによって処理されます。