Class JsonViewRequestBodyAdvice
java.lang.Object
org.springframework.web.servlet.mvc.method.annotation.RequestBodyAdviceAdapter
org.springframework.web.servlet.mvc.method.annotation.JsonViewRequestBodyAdvice
- All Implemented Interfaces:
- RequestBodyAdvice
A 
RequestBodyAdvice implementation that adds support for Jackson's
 @JsonView annotation declared on a Spring MVC @HttpEntity
 or @RequestBody method parameter.
 The deserialization view specified in the annotation will be passed in to the
 MappingJackson2HttpMessageConverter
 which will then use it to deserialize the request body with.
 
Note that despite @JsonView allowing for more than one class to
 be specified, the use for a request body advice is only supported with
 exactly one class argument. Consider the use of a composite interface.
- Since:
- 4.2
- Author:
- Sebastien Deleuze
- See Also:
- 
- JsonView
- ObjectMapper.readerWithView(Class)
 
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionbeforeBodyRead(HttpInputMessage inputMessage, MethodParameter methodParameter, Type targetType, Class<? extends HttpMessageConverter<?>> selectedConverterType) The default implementation returns the InputMessage that was passed in.booleansupports(MethodParameter methodParameter, Type targetType, Class<? extends HttpMessageConverter<?>> converterType) Invoked first to determine if this interceptor applies.Methods inherited from class org.springframework.web.servlet.mvc.method.annotation.RequestBodyAdviceAdapterafterBodyRead, handleEmptyBody
- 
Constructor Details- 
JsonViewRequestBodyAdvicepublic JsonViewRequestBodyAdvice()
 
- 
- 
Method Details- 
supportspublic boolean supports(MethodParameter methodParameter, Type targetType, Class<? extends HttpMessageConverter<?>> converterType) Description copied from interface:RequestBodyAdviceInvoked first to determine if this interceptor applies.- Parameters:
- methodParameter- the method parameter
- targetType- the target type, not necessarily the same as the method parameter type, e.g. for- HttpEntity<String>.
- converterType- the selected converter type
- Returns:
- whether this interceptor should be invoked or not
 
- 
beforeBodyReadpublic HttpInputMessage beforeBodyRead(HttpInputMessage inputMessage, MethodParameter methodParameter, Type targetType, Class<? extends HttpMessageConverter<?>> selectedConverterType) throws IOException Description copied from class:RequestBodyAdviceAdapterThe default implementation returns the InputMessage that was passed in.- Specified by:
- beforeBodyReadin interface- RequestBodyAdvice
- Overrides:
- beforeBodyReadin class- RequestBodyAdviceAdapter
- Parameters:
- inputMessage- the request
- methodParameter- the target method parameter
- targetType- the target type, not necessarily the same as the method parameter type, e.g. for- HttpEntity<String>.
- selectedConverterType- the converter used to deserialize the body
- Returns:
- the input request or a new instance (never null)
- Throws:
- IOException
 
 
-