public interface AsyncWebRequestInterceptor extends WebRequestInterceptor
WebRequestInterceptor
を拡張します。 ハンドラーが非同期のリクエスト処理を開始すると、リクエスト処理の結果(ModelAndView など)が現在のスレッドで利用できず、処理がまだ完了していないため、DispatcherServlet は通常どおりに postHandle
および afterCompletion
を呼び出さずに終了します。このようなシナリオでは、代わりに afterConcurrentHandlingStarted(WebRequest)
メソッドが呼び出され、実装はスレッドバインド属性のクリーンアップなどのタスクを実行できます。
非同期処理が完了すると、リクエストはさらに処理するためにコンテナーにディスパッチされます。この段階で、DispatcherServlet は通常どおり preHandle
、postHandle
、afterCompletion
を呼び出します。
WebAsyncManager
修飾子と型 | メソッドと説明 |
---|---|
void | afterConcurrentHandlingStarted(WebRequest request) ハンドラーがリクエストを同時に処理し始めたときに、 postHandle および afterCompletion の代わりに呼び出されます。 |
afterCompletion, postHandle, preHandle
void afterConcurrentHandlingStarted(WebRequest request)
postHandle
および afterCompletion
の代わりに呼び出されます。request
- 現在のリクエスト