8.2. Camel ルートへのデータ変換ノードの追加
- Palette で、Transformation ドロワーを展開します。
Data Transformation パターンをクリックし、キャンバスで
SetHeader _setHeader1
とTo_to1
ノード間の矢印をクリックします。New Transformation ウィザードが開き、Dozer File Path フィールドが自動入力されます。
残りのフィールドに入力します。
-
Transformation ID フィールド:
xml2json
を入力します。 - Source Type は、ドロップダウンメニューから XML を選択します。
- Target Type は、ドロップダウンメニューから JSON を選択します。
-
Transformation ID フィールド:
Next をクリックします。
Source Type (XML) 定義ページが開き、XML Schema (デフォルト) または XML Instance Document の例を指定して、ソースデータのタイプ定義を指定します。
- XML Schema は有効のままにします。
Source file での場合は、ソースデータの種類定義に使用する XML スキーマファイルまたは XML インスタンスファイルの場所を参照して、選択します (ここでは
abc-order.xsd
)。XML Structure Preview ペインには、XML 構造のプレビューが表示されます。
Element root フィールドに
ABCOrder
を入力します。ツールはこのテキストを使用して、マップするソースデータ項目を表示するペインにラベルを付けます。
Source Type (XML) 定義ページは以下のようになります。
Next をクリックして Target Type (JSON) 定義ページを開きます。ここで、ターゲットデータのタイプ定義を指定します。
JSON Instance Document をクリックします。
Target File フィールドに、
xyz-order.json
インスタンスドキュメントへのパスを入力します。または、このドキュメントを参照します。JSON Structure Preview ペインには、JSON データ構造のプレビューが表示されます。- Finish をクリックします。
変換エディターが開きます。ここで、XML ソースのデータ項目を JSON ターゲットのデータ項目にマップできます。
変換エディターは、次の 3 つのパネルで設定されています。
- Source —ソ ースの利用可能なデータ項目が一覧表示されます
- Mappings — ソースとターゲットのデータ項目間のマッピングが表示されます
- Target — ターゲットの利用可能なデータ項目が一覧表示されます
さらに、エディターの 3 つのパネルのすぐ下にあるエディターの詳細ペイン (最初のマッピングが作成されると表示) には、現在選択されているマッピング済みのソースデータ項目とターゲットデータ項目の両方の階層先がグラフィカル表示されます。以下に例を示します。
詳細ペインを使用して、選択したソースおよびターゲットのデータ項目のマッピングをカスタマイズできます。
- Set property — 既存のマッピングを変更するか、単純なデータ項目をコレクション内の 1 つにマップします (「単純なデータ項目をコレクションのデータ項目にマッピング」 を参照)。
- Set variable — データ項目の定数値を指定します (「定数変数のデータ項目へのマッピング」 を参照)。
- Set expression — データ項目を指定された式の動的評価にマップします (「式のデータ項目へのマッピング」 を参照)。
- Add transformation — ビルトイン関数を使用して、マップされたデータ項目の値を変更します (「マップされたデータ項目へのビルトイン関数の追加」 を参照)。
- Add custom transformation — 作成した Java メソッドまたは以前に作成したメソッドを使用して、マップされたデータ項目の値を変更します (「マップされたデータ項目へのカスタム変換の追加」 を参照)。