Interface AsyncWebRequestInterceptor

All Superinterfaces:
WebRequestInterceptor
All Known Implementing Classes:
OpenEntityManagerInViewInterceptor, OpenSessionInViewInterceptor

public interface AsyncWebRequestInterceptor extends WebRequestInterceptor
Extends WebRequestInterceptor with a callback method invoked during asynchronous request handling.

When a handler starts asynchronous request handling, the DispatcherServlet exits without invoking postHandle and afterCompletion, as it normally does, since the results of request handling (e.g. ModelAndView) are not available in the current thread and handling is not yet complete. In such scenarios, the afterConcurrentHandlingStarted(WebRequest) method is invoked instead allowing implementations to perform tasks such as cleaning up thread bound attributes.

When asynchronous handling completes, the request is dispatched to the container for further processing. At this stage the DispatcherServlet invokes preHandle, postHandle and afterCompletion as usual.

Since:
3.2
Author:
Rossen Stoyanchev
See Also:
  • Method Details

    • afterConcurrentHandlingStarted

      void afterConcurrentHandlingStarted(WebRequest request)
      Called instead of postHandle and afterCompletion, when the handler started handling the request concurrently.
      Parameters:
      request - the current request