クラス AbstractJackson2MessageConverter

java.lang.ObjectSE
org.springframework.amqp.support.converter.AbstractMessageConverter
org.springframework.amqp.support.converter.AbstractJackson2MessageConverter
実装されているすべてのインターフェース:
MessageConverterSmartMessageConverterAwareBeanClassLoaderAware
既知の直属サブクラス
Jackson2JsonMessageConverterJackson2XmlMessageConverter

@DeprecatedSE(forRemoval=true, since="4.0") public abstract class AbstractJackson2MessageConverter extends AbstractMessageConverter implements BeanClassLoaderAware, SmartMessageConverter
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
4.0 以降、Jackson 3 では AbstractJacksonMessageConverter が優先されます。
抽象的な Jackson2 メッセージコンバーター。
導入:
2.1
作成者:
Mark Pollack, James Carr, Dave Syer, Sam Nelson, Andreas Asplund, Artem Bilan, Mohammad Hewedy, Gary Russell
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final CharsetSE
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    StringSE と byte[] の間の変換に使用される文字セット。
    protected final org.apache.commons.logging.Log
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    protected final com.fasterxml.jackson.databind.ObjectMapper
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
  • コンストラクターの概要

    コンストラクター
    修飾子
    コンストラクター
    説明
    protected
    AbstractJackson2MessageConverter(com.fasterxml.jackson.databind.ObjectMapper objectMapper, MimeType contentType, StringSE... trustedPackages)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    提供された ObjectMapper インスタンスで構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected Message
    createMessage(ObjectSE objectToConvert, MessageProperties messageProperties)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    指定されたペイロードオブジェクトとメッセージプロパティからメッセージを作成します。
    protected Message
    createMessage(ObjectSE objectToConvert, MessageProperties messageProperties, @Nullable TypeSE genericType)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    指定されたペイロードオブジェクトとメッセージプロパティからメッセージを作成します。
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    Message から Java オブジェクトに変換します。
    fromMessage(Message message, @Nullable ObjectSE conversionHint)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    追加の変換コンテキストを引数として取る MessageConverter.fromMessage(Message) のバリアント。
    protected @Nullable ClassLoaderSE
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    @Nullable ClassMapper
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    protected MimeType
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    サポートされているコンテンツ型を取得します。デコード時にサブ型のみがチェックされます。
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    型の優先順位を返します。
    boolean
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    明示的な java 型マッパーが提供されているかどうか。
    protected boolean
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    void
    setAlwaysConvertToInferredType(boolean alwaysAttemptConversion)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    false (デフォルト) の場合、型 (またはコンテナー型の内容) が抽象の場合、型 ID ヘッダーにフォールバックします。
    void
    setAssumeSupportedContentType(boolean assumeSupportedContentType)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    デフォルトでは、contentType プロパティが存在しない、またはデフォルト ('application/octet-stream') に設定されている場合は、サポートされているコンテンツ型が想定されます。
    void
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    void
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    void
    setDefaultCharset(@Nullable StringSE defaultCharset)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    テキストベースのメッセージ本文コンテンツとの間で変換するときに使用するデフォルトの文字セットを指定します。
    void
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    void
    setNullAsOptionalEmpty(boolean nullAsOptionalEmpty)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    true の場合、jackson がボディを null としてデコードすると、元のボディを返す代わりに Optional.empty() に変換されます。
    void
    setSupportedContentType(MimeType supportedContentType)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    サポートされているコンテンツ型を設定します。デコード時にサブ型のみがチェックされます。
    void
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    メッセージプロパティで型情報を評価するための優先順位を設定します。
    void
    setUseProjectionForInterfaces(boolean useProjectionForInterfaces)
    非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    推論されたパラメーターの型がインターフェースの場合、Spring Data 射影を使用してオブジェクトを作成するには、true に設定します。

    クラス org.springframework.amqp.support.converter.AbstractMessageConverter から継承されたメソッド

    isCreateMessageIds, setCreateMessageIds, toMessage, toMessage

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE

    インターフェース org.springframework.amqp.support.converter.MessageConverter から継承されたメソッド

    toMessage, toMessage
  • フィールドの詳細

    • DEFAULT_CHARSET

      public static final CharsetSE DEFAULT_CHARSET
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      StringSE と byte[] の間の変換に使用される文字セット。
    • log

      protected final org.apache.commons.logging.Log log
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • objectMapper

      protected final com.fasterxml.jackson.databind.ObjectMapper objectMapper
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
  • コンストラクターの詳細

    • AbstractJackson2MessageConverter

      protected AbstractJackson2MessageConverter(com.fasterxml.jackson.databind.ObjectMapper objectMapper, MimeType contentType, StringSE... trustedPackages)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      提供された ObjectMapper インスタンスで構築します。
      パラメーター:
      objectMapper - 使用する ObjectMapper
      contentType - サポートされているコンテンツ型。デコード時にサブ型のみがチェックされます (例: */json、*/xml)。これに文字セットパラメーターが含まれている場合、エンコード時に contentType ヘッダーは設定されず、デコード時に生のバイトが Jackson に渡され、エンコードが動的に決定されます。それ以外の場合は、contentEncoding または既定の文字セットが使用されます。
      trustedPackages - デシリアライズ用の信頼できる Java パッケージ
      関連事項:
  • メソッドの詳細

    • getSupportedContentType

      protected MimeType getSupportedContentType()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      サポートされているコンテンツ型を取得します。デコード時にサブ型のみがチェックされます (例: */json、*/xml)。これに文字セットパラメーターが含まれている場合、エンコード時に contentType ヘッダーは設定されず、デコード時に生のバイトが Jackson に渡され、エンコードが動的に決定されます。それ以外の場合は、contentEncoding またはデフォルトの文字セットが使用されます。
      戻り値:
      supportedContentType
      導入:
      2.4.3
    • setSupportedContentType

      public void setSupportedContentType(MimeType supportedContentType)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      サポートされているコンテンツ型を設定します。デコード時にサブ型のみがチェックされます (例: */json、*/xml)。これに文字セットパラメーターが含まれている場合、エンコード時に contentType ヘッダーは設定されず、デコード時に生のバイトが Jackson に渡され、エンコードが動的に決定されます。それ以外の場合は、contentEncoding またはデフォルトの文字セットが使用されます。
      パラメーター:
      supportedContentType - supportedContentType を設定します。
      導入:
      2.4.3
    • setNullAsOptionalEmpty

      public void setNullAsOptionalEmpty(boolean nullAsOptionalEmpty)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      true の場合、jackson がボディを null としてデコードすると、元のボディを返す代わりに Optional.empty() に変換されます。デフォルトは false です。
      パラメーター:
      nullAsOptionalEmpty - 空を返す場合は true。
      導入:
      2.4.7
    • getClassMapper

      public @Nullable ClassMapper getClassMapper()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • setClassMapper

      public void setClassMapper(ClassMapper classMapper)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • setDefaultCharset

      public void setDefaultCharset(@Nullable StringSE defaultCharset)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      テキストベースのメッセージ本文コンテンツとの間で変換するときに使用するデフォルトの文字セットを指定します。指定しない場合、文字セットは "UTF-8" になります。
      パラメーター:
      defaultCharset - デフォルトの文字セット。
    • getDefaultCharset

      public StringSE getDefaultCharset()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • setBeanClassLoader

      public void setBeanClassLoader(ClassLoaderSE classLoader)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      次で指定:
      インターフェース BeanClassLoaderAwaresetBeanClassLoader 
    • getClassLoader

      protected @Nullable ClassLoaderSE getClassLoader()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • getJavaTypeMapper

      public Jackson2JavaTypeMapper getJavaTypeMapper()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • isTypeMapperSet

      public boolean isTypeMapperSet()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      明示的な java 型マッパーが提供されているかどうか。
      戻り値:
      デフォルトの型マッパーが使用されている場合は false。
      導入:
      2.2
      関連事項:
    • setJavaTypeMapper

      public void setJavaTypeMapper(Jackson2JavaTypeMapper javaTypeMapper)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • getTypePrecedence

      public Jackson2JavaTypeMapper.TypePrecedence getTypePrecedence()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      型の優先順位を返します。
      戻り値:
      優先順位。
      関連事項:
    • setTypePrecedence

      public void setTypePrecedence(Jackson2JavaTypeMapper.TypePrecedence typePrecedence)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      メッセージプロパティの型情報を評価する優先順位を設定します。メソッドレベルで @RabbitListener を使用する場合、フレームワークはメソッドシグネチャーからペイロード変換のターゲット型を決定しようとします。その場合、この型は inferredArgumentType メッセージプロパティで提供されます。

      デフォルトでは、型が具体的 (抽象的でもなく、インターフェースでもない) の場合、これは、__TypeId__ で提供される型情報および送信者によって提供される関連ヘッダーの前に使用されます。

      __TypeId__ および関連するヘッダーの使用を強制する場合 (実際の型がメソッド引数型のサブクラスである場合など)、優先順位を Jackson2JavaTypeMapper.TypePrecedence.TYPE_ID に設定します。

      パラメーター:
      typePrecedence - 優先順位。
      関連事項:
    • setAlwaysConvertToInferredType

      public void setAlwaysConvertToInferredType(boolean alwaysAttemptConversion)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      false (デフォルト) の場合、型 (またはコンテナー型の内容) が抽象の場合、型 ID ヘッダーにフォールバックします。ObjectMapper でカスタムデシリアライザーが構成されているため、常に変換を試行する必要がある場合は true に設定します。試行が失敗した場合は、ヘッダーにフォールバックします。
      パラメーター:
      alwaysAttemptConversion - 試みに真。
      導入:
      2.2.8
    • isUseProjectionForInterfaces

      protected boolean isUseProjectionForInterfaces()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
    • setUseProjectionForInterfaces

      public void setUseProjectionForInterfaces(boolean useProjectionForInterfaces)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      推論されたパラメーターの型がインターフェースの場合、Spring Data 射影を使用してオブジェクトを作成するには、true に設定します。
      パラメーター:
      useProjectionForInterfaces - 射影を使用する場合は true。
      導入:
      2.2
    • setAssumeSupportedContentType

      public void setAssumeSupportedContentType(boolean assumeSupportedContentType)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      デフォルトでは、contentType プロパティが存在しない場合、またはデフォルト('application/octet-stream')に設定されている場合は、サポートされているコンテンツ型が想定されます。この条件が存在する場合、変換されていない 'byte[]' を返す以前の動作に戻すには、'false' に設定します。
      パラメーター:
      assumeSupportedContentType - コンテンツ型がサポートされていると想定しない場合は、false に設定します。
      導入:
      2.2
    • fromMessage

      public ObjectSE fromMessage(Message message) throws MessageConversionException
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      インターフェースからコピーされた説明: MessageConverter
      Message から Java オブジェクトに変換します。
      次で指定:
      インターフェース MessageConverterfromMessage 
      パラメーター:
      message - 変換するメッセージ
      戻り値:
      変換された Java オブジェクト
      例外:
      MessageConversionException - 変換に失敗した場合
    • fromMessage

      public ObjectSE fromMessage(Message message, @Nullable ObjectSE conversionHint) throws MessageConversionException
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      追加の変換コンテキストを引数として取る MessageConverter.fromMessage(Message) のバリアント。
      次で指定:
      インターフェース SmartMessageConverterfromMessage 
      パラメーター:
      message - 入力メッセージ。
      conversionHint - conversionHint は ParameterizedTypeReference である必要があります。
      戻り値:
      変換の結果、またはコンバーターが変換を実行できない場合は null
      例外:
      MessageConversionException - 変換に失敗した場合。
      関連事項:
    • createMessage

      protected Message createMessage(ObjectSE objectToConvert, MessageProperties messageProperties) throws MessageConversionException
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      クラスからコピーされた説明: AbstractMessageConverter
      指定されたペイロードオブジェクトとメッセージプロパティからメッセージを作成します。メッセージ ID は、後で必要に応じてプロパティに追加されます。
      次で指定:
      クラス AbstractMessageConvertercreateMessage 
      パラメーター:
      objectToConvert - ペイロード。
      messageProperties - メッセージのプロパティ (ヘッダー)。
      戻り値:
      メッセージ。
      例外:
      MessageConversionException
    • createMessage

      protected Message createMessage(ObjectSE objectToConvert, MessageProperties messageProperties, @Nullable TypeSE genericType) throws MessageConversionException
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      クラスからコピーされた説明: AbstractMessageConverter
      指定されたペイロードオブジェクトとメッセージプロパティからメッセージを作成します。メッセージ ID は、後で必要に応じてプロパティに追加されます。
      オーバーライド:
      クラス AbstractMessageConvertercreateMessage 
      パラメーター:
      objectToConvert - ペイロード
      messageProperties - メッセージのプロパティ (headers)
      genericType - 変換元の型 - 型 ヘッダーの入力に使用されます。
      戻り値:
      メッセージ
      例外:
      MessageConversionException