How to implement ResponseBodyAdvice for all controllers?

I have a requirement to edit my HttpResponse to add a header value. I searched for one point to implement it and found that ResponseBodyadvice would be useful.

But both methods that overloaded in my new class were never called. Could you tell me if I missed any configurations.

 @ControllerAdvice public class EditResponseHeader implements ResponseBodyAdvice<object> { @Override public boolean supports(MethodParameter returnType, Class<? extends HttpMessageConverter<?>> converterType) { return true; } .... @Override public Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType, Class<? extends HttpMessageConverter<?>> selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) { .... return body; } } 
+6
source share
1 answer

What about:

 @Override @ExceptionHandler(Exception.class) public Response<?> beforeBodyWrite(Response<?> body, MethodParameter returnType, MediaType selectedContentType, Class<? extends HttpMessageConverter<?>> selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) { .... return body; } 
0
source

All Articles