クラス AbstractJaxb2PayloadMethodProcessor

実装されたすべてのインターフェース:
MethodArgumentResolverMethodReturnValueHandler
既知の直属サブクラス
JaxbElementPayloadMethodProcessorXmlRootElementPayloadMethodProcessor

public abstract class AbstractJaxb2PayloadMethodProcessor extends AbstractPayloadMethodProcessor
JAXB2 を使用する MethodArgumentResolver および MethodReturnValueHandler 実装の抽象基本クラス。JAXBContext オブジェクトを遅延して作成し、マーシャリングおよびアンマーシャリングメソッドを提供します。
導入:
2.0
作成者:
Arjen Poutsma
  • コンストラクターの詳細

    • AbstractJaxb2PayloadMethodProcessor

      public AbstractJaxb2PayloadMethodProcessor()
  • メソッドの詳細

    • handleReturnValue

      public final void handleReturnValue(MessageContext messageContext, org.springframework.core.MethodParameter returnType, ObjectSE returnValue) throws ExceptionSE
      インターフェースからコピーされた説明: MethodReturnValueHandler
      指定された戻り値を処理します。
      パラメーター:
      messageContext - 現在のメッセージコンテキスト
      returnType - 処理する戻り値の型。この型は、このインターフェースの MethodReturnValueHandler.supportsReturnType(MethodParameter) メソッドに事前に渡されている必要があります。MethodReturnValueHandler.supportsReturnType(MethodParameter) メソッドは true を返している必要があります。
      returnValue - 処理する戻り値
      例外:
      ExceptionSE - エラーの場合
    • handleReturnValueInternal

      protected abstract void handleReturnValueInternal(MessageContext messageContext, org.springframework.core.MethodParameter returnType, ObjectSE returnValue) throws ExceptionSE
      例外:
      ExceptionSE
    • marshalToResponsePayload

      protected final void marshalToResponsePayload(MessageContext messageContext, ClassSE<?> clazz, ObjectSE jaxbElement) throws jakarta.xml.bind.JAXBException
      指定された jaxbElement を、指定されたメッセージコンテキストのレスポンスペイロードにマーシャルします。
      パラメーター:
      messageContext - マーシャリングするメッセージコンテキスト
      clazz - マーシャラーを作成するためのクラズ
      jaxbElement - 整列化されるオブジェクト
      例外:
      jakarta.xml.bind.JAXBException - JAXB2 エラーの場合
    • unmarshalFromRequestPayload

      protected final ObjectSE unmarshalFromRequestPayload(MessageContext messageContext, ClassSE<?> clazz) throws jakarta.xml.bind.JAXBException
      指定されたメッセージコンテキストのリクエストペイロードをアンマーシャリングします。
      パラメーター:
      messageContext - マーシャリングを解除するメッセージコンテキスト
      clazz - マーシャリングを解除するクラス
      戻り値:
      マーシャリングされていないオブジェクト、またはリクエストにペイロードがない場合は null 
      例外:
      jakarta.xml.bind.JAXBException - JAXB2 エラーの場合
    • unmarshalElementFromRequestPayload

      protected final <T> jakarta.xml.bind.JAXBElement<T> unmarshalElementFromRequestPayload(MessageContext messageContext, ClassSE<T> clazz) throws jakarta.xml.bind.JAXBException
      指定されたメッセージコンテキストのリクエストペイロードを JAXBElement として非整列化します。
      パラメーター:
      messageContext - マーシャリングを解除するメッセージコンテキスト
      clazz - マーシャリングを解除するクラス
      戻り値:
      マーシャリングされていない要素、またはリクエストにペイロードがない場合は null 
      例外:
      jakarta.xml.bind.JAXBException - JAXB2 エラーの場合
    • createMarshaller

      protected jakarta.xml.bind.Marshaller createMarshaller(jakarta.xml.bind.JAXBContext jaxbContext) throws jakarta.xml.bind.JAXBException
      オブジェクトを XML にマーシャリングするために使用する新しい Marshaller を作成します。デフォルトは JAXBContext.createMarshaller() ですが、さらにカスタマイズするためにサブクラスでオーバーライドできます。
      パラメーター:
      jaxbContext - マーシャラーを作成するための JAXB コンテキスト
      戻り値:
      マーシャラー
      例外:
      jakarta.xml.bind.JAXBException - JAXB エラーの場合
    • createUnmarshaller

      protected jakarta.xml.bind.Unmarshaller createUnmarshaller(jakarta.xml.bind.JAXBContext jaxbContext) throws jakarta.xml.bind.JAXBException
      XML をオブジェクトにアンマーシャリングするために使用する新しい Unmarshaller を作成します。デフォルトは JAXBContext.createUnmarshaller() ですが、さらにカスタマイズするためにサブクラスでオーバーライドできます。
      パラメーター:
      jaxbContext - アンマーシャラーを作成するための JAXB コンテキスト
      戻り値:
      アンマーシャラー
      例外:
      jakarta.xml.bind.JAXBException - JAXB エラーの場合