166.2. Spring Boot Auto-Configuration

コンポーネントは、以下に記載される 16 のオプションをサポートします。

名前説明デフォルトタイプ

camel.dataformat.jacksonxml.allow-jms-type

JMS ユーザーが JMS 仕様の JMSType ヘッダーを使用して、アンマーシャリングに使用する FQN クラス名を指定できるようにするために使用されます。

false

Boolean

camel.dataformat.jacksonxml.allow-unmarshall-type

有効にすると、Jackson はアンマーシャリング中に CamelJacksonUnmarshalType ヘッダーの使用を試みることができます。これは、使用する必要がある場合にのみ有効にする必要があります。

false

Boolean

camel.dataformat.jacksonxml.collection-type-name

使用するレジストリーを参照するカスタムコレクションタイプを参照します。このオプションはあまり使用しないでください。ただし、デフォルトとして java.util.Collection に基づくものとは異なるコレクションタイプを使用できます。

 

String

camel.dataformat.jacksonxml.content-type-header

データフォーマットがデータ形式を実行できる場合は、データフォーマットの型で Content-Type ヘッダーを設定するかどうか。たとえば、XML にマーシャリングするデータ形式の場合は application/xml、JSON にマーシャリングするデータ形式の場合は JSon です。

false

Boolean

camel.dataformat.jacksonxml.disable-features

Jackson com.fasterxml.jackson.databind.ObjectMapper で無効にする機能のセット。この機能は、com.fasterxml.jackson.databind.SerializationFeature、com.fasterxml.jackson.databind.DeserializationFeature、または com.fasterxml.jackson.databind.MapperFeature の列挙型と一致する名前である必要があります。複数の機能はコンマで区切ることができます。

 

String

camel.dataformat.jacksonxml.enable-features

Jackson com.fasterxml.jackson.databind.ObjectMapper で有効にする機能のセット。この機能は、com.fasterxml.jackson.databind.SerializationFeature、com.fasterxml.jackson.databind.DeserializationFeature、または com.fasterxml.jackson.databind.MapperFeature の列挙型と一致する名前である必要があります。複数の機能はコンマで区切ることができます。

 

String

camel.dataformat.jacksonxml.enable-jaxb-annotation-module

jackson の使用時に JAXB アノテーションモジュールを有効にするかどうか。有効にすると、Jackson によって JAXB アノテーションを使用できます。

false

Boolean

camel.dataformat.jacksonxml.enabled

jacksonxml データ形式を有効にする

true

Boolean

camel.dataformat.jacksonxml.include

pojo を JSON にマーシャリングする必要があり、pojo に null 値を持つフィールドがいくつかある場合。これらの null 値をスキップするには、このオプションを NON_NULL に設定します。

 

String

camel.dataformat.jacksonxml.json-view

POJO を JSON にマーシャリングする際に、JSON 出力から特定のフィールドを除外する場合があります。Jackson では、JSON ビューを使用してこれを実現できます。このオプションは、JsonView アノテーションを持つクラスを参照します。

 

Class

camel.dataformat.jacksonxml.module-class-names

カスタム Jackson モジュール com.fasterxml.jackson.databind.Module を使用するには、FQN クラス名を持つ文字列として指定します。複数のクラスはコンマで区切ることができます。

 

String

camel.dataformat.jacksonxml.module-refs

Camel レジストリーから参照されるカスタム Jackson モジュールを使用します。複数のモジュールはコンマで区切ることができます。

 

String

camel.dataformat.jacksonxml.pretty-print

適切にフォーマットされたきれいな印刷出力を有効にします。デフォルトでは false です。

false

Boolean

camel.dataformat.jacksonxml.unmarshal-type-name

アンアームシャリング時に使用する Java 型のクラス名

 

String

camel.dataformat.jacksonxml.use-list

Map の List または Pojo の List にアンマーシャリングします。

false

Boolean

camel.dataformat.jacksonxml.xml-mapper

指定された ID を持つ既存の XmlMapper を検索して使用します。

 

String

ND

166.2.1. Spring DSL での Jackson XML の使用

Spring DSL でデータ形式を使用する場合には、最初にデータ形式を宣言する必要があります。これは DataFormats XML タグで行われます。

        <dataFormats>
            <!-- here we define a Xml data format with the id jack and that it should use the TestPojo as the class type when
                 doing unmarshal. The unmarshalTypeName is optional, if not provided Camel will use a Map as the type -->
            <jacksonxml id="jack" unmarshalTypeName="org.apache.camel.component.jacksonxml.TestPojo"/>
        </dataFormats>

そして、ルートでこの ID を参照できます。

       <route>
            <from uri="direct:back"/>
            <unmarshal ref="jack"/>
            <to uri="mock:reverse"/>
        </route>