クラス AbstractMessageConverterMethodProcessor
java.lang.ObjectSE
org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver
org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor
- 実装されたすべてのインターフェース:
HandlerMethodArgumentResolver
,HandlerMethodReturnValueHandler
public abstract class AbstractMessageConverterMethodProcessor
extends AbstractMessageConverterMethodArgumentResolver
implements HandlerMethodReturnValueHandler
HttpMessageConverters
を使用してレスポンスに書き込むことにより、メソッドの戻り値を処理する機能で AbstractMessageConverterMethodArgumentResolver
を拡張します。- 導入:
- 3.1
- 作成者:
- Arjen Poutsma, Rossen Stoyanchev, Brian Clozel, Juergen Hoeller
フィールドサマリー
クラス org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver から継承されたフィールド
logger, messageConverters
コンストラクターのサマリー
修飾子コンストラクター説明protected
AbstractMessageConverterMethodProcessor
(ListSE<HttpMessageConverter<?>> converters) コンバーターのリストのみを持つコンストラクター。protected
AbstractMessageConverterMethodProcessor
(ListSE<HttpMessageConverter<?>> converters, ContentNegotiationManager contentNegotiationManager) コンバーターと ContentNegotiationManager のリストを持つコンストラクター。protected
AbstractMessageConverterMethodProcessor
(ListSE<HttpMessageConverter<?>> converters, ContentNegotiationManager manager, ListSE<ObjectSE> requestResponseBodyAdvice) コンバーターと ContentNegotiationManager のリスト、およびリクエスト / レスポンス本文アドバイスインスタンスを持つコンストラクター。メソッドのサマリー
修飾子と型メソッド説明protected ServletServerHttpResponse
createOutputMessage
(NativeWebRequest webRequest) 指定されたNativeWebRequest
から新しいHttpOutputMessage
を作成します。getProducibleMediaTypes
(HttpServletRequestEE request, ClassSE<?> valueClass) 作成可能なメディア型を返します。getProducibleMediaTypes
(HttpServletRequestEE request, ClassSE<?> valueClass, TypeSE targetType) 作成可能なメディア型を返します。protected ClassSE<?>
getReturnValueType
(ObjectSE value, MethodParameter returnType) レスポンスに書き込まれる値の型を返します。protected boolean
isResourceType
(ObjectSE value, MethodParameter returnType) 戻り値または宣言された戻り型がResource
を継承するかどうかを返します。protected <T> void
writeWithMessageConverters
(T value, MethodParameter returnType, ServletServerHttpRequest inputMessage, ServletServerHttpResponse outputMessage) 指定された戻り値の型を指定された出力メッセージに書き込みます。protected <T> void
writeWithMessageConverters
(T value, MethodParameter returnType, NativeWebRequest webRequest) 指定された戻り値を指定された Web リクエストに書き込みます。クラス org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver から継承されたメソッド
adaptArgumentIfNecessary, createInputMessage, getSupportedMediaTypes, isBindExceptionRequired, readWithMessageConverters, readWithMessageConverters, validateIfApplicable
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.web.method.support.HandlerMethodArgumentResolver から継承されたメソッド
resolveArgument, supportsParameter
インターフェース org.springframework.web.method.support.HandlerMethodReturnValueHandler から継承されたメソッド
handleReturnValue, supportsReturnType
コンストラクターの詳細
AbstractMessageConverterMethodProcessor
コンバーターのリストのみを持つコンストラクター。AbstractMessageConverterMethodProcessor
protected AbstractMessageConverterMethodProcessor(ListSE<HttpMessageConverter<?>> converters, @Nullable ContentNegotiationManager contentNegotiationManager) コンバーターと ContentNegotiationManager のリストを持つコンストラクター。AbstractMessageConverterMethodProcessor
protected AbstractMessageConverterMethodProcessor(ListSE<HttpMessageConverter<?>> converters, @Nullable ContentNegotiationManager manager, @Nullable ListSE<ObjectSE> requestResponseBodyAdvice) コンバーターと ContentNegotiationManager のリスト、およびリクエスト / レスポンス本文アドバイスインスタンスを持つコンストラクター。
メソッドの詳細
createOutputMessage
指定されたNativeWebRequest
から新しいHttpOutputMessage
を作成します。- パラメーター:
webRequest
- からの出力メッセージを作成するための Web リクエスト- 戻り値:
- 出力メッセージ
writeWithMessageConverters
protected <T> void writeWithMessageConverters(T value, MethodParameter returnType, NativeWebRequest webRequest) throws IOExceptionSE, HttpMediaTypeNotAcceptableException, HttpMessageNotWritableException 指定された戻り値を指定された Web リクエストに書き込みます。writeWithMessageConverters(Object, MethodParameter, ServletServerHttpRequest, ServletServerHttpResponse)
への参加者writeWithMessageConverters
protected <T> void writeWithMessageConverters(@Nullable T value, MethodParameter returnType, ServletServerHttpRequest inputMessage, ServletServerHttpResponse outputMessage) throws IOExceptionSE, HttpMediaTypeNotAcceptableException, HttpMessageNotWritableException 指定された戻り値の型を指定された出力メッセージに書き込みます。- パラメーター:
value
- 出力メッセージに書き込む値returnType
- 値の型inputMessage
- 入力メッセージ。Accept
ヘッダーをインスペクションするために使用されます。outputMessage
- 書き込む出力メッセージ- 例外:
IOExceptionSE
- I/O エラーの場合にスローされますHttpMediaTypeNotAcceptableException
- リクエストのAccept
ヘッダーによって示される条件がメッセージコンバーターによって満たされ得ない場合にスローされますHttpMessageNotWritableException
- 特定のメッセージをコンバーターで書き込めない場合、またはサーバーが選択したコンテンツ型に互換性のあるコンバーターがない場合にスローされます。
getReturnValueType
レスポンスに書き込まれる値の型を返します。通常、これは値の getClass による単純なチェックですが、値が null の場合は、戻り値の型を調べて、ジェネリクス型の決定 (例:ResponseEntity<T>
) を含める必要があります。isResourceType
戻り値または宣言された戻り型がResource
を継承するかどうかを返します。getProducibleMediaTypes
protected ListSE<MediaType> getProducibleMediaTypes(HttpServletRequestEE request, ClassSE<?> valueClass) 作成可能なメディア型を返します。getProducibleMediaTypes
protected ListSE<MediaType> getProducibleMediaTypes(HttpServletRequestEE request, ClassSE<?> valueClass, @Nullable TypeSE targetType) 作成できるメディア型を返します。結果のメディア型は次のとおりです。- リクエストマッピングで指定された生成可能なメディア型、または
- 特定の戻り値を書き込むことができる構成済みコンバーターのメディア型、または
MediaType.ALL
- 導入:
- 4.2