public class HttpEntityMethodProcessor extends AbstractMessageConverterMethodProcessor
HttpEntity
および RequestEntity
メソッドの引数値を解決し、HttpEntity
および ResponseEntity
の戻り値も処理します。HttpEntity
戻り値型には特定の目的があります。このハンドラーは、@ModelAttribute
または @ResponseBody
でアノテーションが付けられた戻り値の型をサポートするハンドラーより先に構成して、確実に引き継がれないようにする必要があります。
logger, messageConverters
コンストラクターと説明 |
---|
HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters) コンバーターのみを備えた基本コンストラクター。 |
HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters, ContentNegotiationManager manager) コンバーターと ContentNegotiationManager を使用した基本コンストラクター。 |
HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters, ContentNegotiationManager manager, ListSE<ObjectSE> requestResponseBodyAdvice) HttpEntity を解決し、ResponseEntity を処理するための完全なコンストラクター。 |
HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters, ListSE<ObjectSE> requestResponseBodyAdvice) HttpEntity メソッドの引数を解決するための完全なコンストラクター。 |
修飾子と型 | メソッドと説明 |
---|---|
protected ClassSE<?> | getReturnValueType(ObjectSE returnValue, MethodParameter returnType) レスポンスに書き込まれる値の型を返します。 |
void | handleReturnValue(ObjectSE returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest) 属性をモデルに追加し、ビューを設定するか、 ModelAndViewContainer.setRequestHandled(boolean) フラグを true に設定して、レスポンスが直接処理されたことを示すことにより、指定された戻り値を処理します。 |
ObjectSE | resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) メソッドパラメーターを解決して、指定されたリクエストの引数値にします。 |
boolean | supportsParameter(MethodParameter parameter) 指定されたメソッドパラメーターがこのリゾルバーによってサポートされているかどうか。 |
boolean | supportsReturnType(MethodParameter returnType) 指定されたメソッドの戻り型がこのハンドラーでサポートされているかどうか。 |
createOutputMessage, getProducibleMediaTypes, getProducibleMediaTypes, isResourceType, writeWithMessageConverters, writeWithMessageConverters
adaptArgumentIfNecessary, createInputMessage, getSupportedMediaTypes, isBindExceptionRequired, readWithMessageConverters, readWithMessageConverters, validateIfApplicable
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters)
HttpEntity
の解決に適しています。ResponseEntity
を処理するには、ContentNegotiationManager
も提供することを検討してください。public HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters, ContentNegotiationManager manager)
ContentNegotiationManager
を使用した基本コンストラクター。HttpEntity
を解決し、Request~
または ResponseBodyAdvice
なしで ResponseEntity
を処理するのに適しています。public HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters, ListSE<ObjectSE> requestResponseBodyAdvice)
HttpEntity
メソッドの引数を解決するための完全なコンストラクター。ResponseEntity
を処理するには、ContentNegotiationManager
も提供することを検討してください。public HttpEntityMethodProcessor(ListSE<HttpMessageConverter<?>> converters, @Nullable ContentNegotiationManager manager, ListSE<ObjectSE> requestResponseBodyAdvice)
HttpEntity
を解決し、ResponseEntity
を処理するための完全なコンストラクター。public boolean supportsParameter(MethodParameter parameter)
HandlerMethodArgumentResolver
parameter
- チェックするメソッドパラメーター true
。それ以外の場合は false
public boolean supportsReturnType(MethodParameter returnType)
HandlerMethodReturnValueHandler
returnType
- チェックするメソッドの戻り値の型 true
。それ以外の場合は false
@Nullable public ObjectSE resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws IOExceptionSE, HttpMediaTypeNotSupportedException
HandlerMethodArgumentResolver
ModelAndViewContainer
は、リクエストのモデルへのアクセスを提供します。WebDataBinderFactory
は、データバインディングや型変換の目的で必要な場合に WebDataBinder
インスタンスを作成する方法を提供します。parameter
- 解決するメソッドパラメーター。このパラメーターは、true
を返さなければならない HandlerMethodArgumentResolver.supportsParameter(org.springframework.core.MethodParameter)
に事前に渡されている必要があります。mavContainer
- 現在のリクエストの ModelAndViewContainerwebRequest
- 現在のリクエスト binderFactory
- WebDataBinder
インスタンスを作成するためのファクトリ null
IOExceptionSE
HttpMediaTypeNotSupportedException
public void handleReturnValue(@Nullable ObjectSE returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest) throws ExceptionSE
HandlerMethodReturnValueHandler
ModelAndViewContainer.setRequestHandled(boolean)
フラグを true
に設定して、レスポンスが直接処理されたことを示すことにより、指定された戻り値を処理します。returnValue
- ハンドラーメソッドから返された値 returnType
- 戻り値の型。この型は、true
を返さなければならない HandlerMethodReturnValueHandler.supportsReturnType(org.springframework.core.MethodParameter)
に事前に渡されている必要があります。mavContainer
- 現在のリクエストの ModelAndViewContainerwebRequest
- 現在のリクエスト ExceptionSE
- 戻り値の処理がエラーになる場合 protected ClassSE<?> getReturnValueType(@Nullable ObjectSE returnValue, MethodParameter returnType)
AbstractMessageConverterMethodProcessor
ResponseEntity<T>
)を含めて、戻り値の型を調べる必要があります。AbstractMessageConverterMethodProcessor
の getReturnValueType