public interface ResponseBodyAdvice<T>
@ResponseBody
or a ResponseEntity controller method but before the body is written
with an HttpMessageConverter.
Implementations may be may be registered directly with
RequestMappingHandlerAdapter and ExceptionHandlerExceptionResolver
or more likely annotated with @ControllerAdvice in which case they
will be auto-detected by both.
| Modifier and Type | Method and Description |
|---|---|
T |
beforeBodyWrite(T body,
MethodParameter returnType,
MediaType selectedContentType,
Class<? extends HttpMessageConverter<?>> selectedConverterType,
ServerHttpRequest request,
ServerHttpResponse response)
Invoked after an
HttpMessageConverter is selected and just before
its write method is invoked. |
boolean |
supports(MethodParameter returnType,
Class<? extends HttpMessageConverter<?>> converterType)
Whether this component supports the given controller method return type
and the selected
HttpMessageConverter type. |
boolean supports(MethodParameter returnType, Class<? extends HttpMessageConverter<?>> converterType)
HttpMessageConverter type.returnType - the return typeconverterType - the selected converter typetrue if beforeBodyWrite(T, org.springframework.core.MethodParameter, org.springframework.http.MediaType, java.lang.Class<? extends org.springframework.http.converter.HttpMessageConverter<?>>, org.springframework.http.server.ServerHttpRequest, org.springframework.http.server.ServerHttpResponse) should be invoked, false otherwiseT beforeBodyWrite(T body, MethodParameter returnType, MediaType selectedContentType, Class<? extends HttpMessageConverter<?>> selectedConverterType, ServerHttpRequest request, ServerHttpResponse response)
HttpMessageConverter is selected and just before
its write method is invoked.body - the body to be writtenreturnType - the return type of the controller methodselectedContentType - the content type selected through content negotiationselectedConverterType - the converter type selected to write to the responserequest - the current requestresponse - the current response