Message Element Setter メディエーション・プリミティブを使用して、メッセージの内容を設定できます。
Message Element Setter メディエーション・プリミティブは、メッセージ内容を設定するための簡単な手段を提供します。メッセージ・エレメントは、メディエーション・プリミティブ・プロパティーを設定することによって、追加、変更、または削除することができます。Message Element Setter プリミティブは、メッセージ・タイプの変更は行いません。
メッセージに複数の変更を加えることができます。変更は順次行われるため、エレメントは互いをベースとして構築できます。
Message Element Setter メディエーション・プリミティブには、入力端末 (in)、出力端末 (out)、障害端末 (fail) がそれぞれ 1 台ずつ存在します。 in 端末はメッセージの受信用に接続され、その他の端末はメッセージの送信用に接続されています。メディエーションが成功すると、変更されたメッセージが out 端末によって伝搬されます。変換中に例外が発生すると、fail 端末が、failInfo エレメントに含まれる例外情報と共に元のメッセージを伝搬します。
ターゲット・エレメントには、定数値か、入力サービス・メッセージ・オブジェクト (SMO) 内からコピーした値を設定できます。指定したターゲット・エレメントが存在しない場合は、SMO 内に作成されます。また、メッセージ・エレメントがオプション・エレメントまたは繰り返しエレメントの場合は、削除することもできます。
ターゲットのエレメントは、ターゲット・プロパティーを使用して XPath 式として指定されます。 ターゲット・エレメントを定数値に設定した場合は、ターゲット XPath は SMO ノード内の単一のリーフに解決される必要があります。ターゲット・エレメントをソース・エレメントから設定する場合は、ソースとターゲットの両方の XPaths が単一のエレメント (単一のリーフまたはサブツリー) に解決される必要があります。
定義した操作が順次に実行されるため、後の操作は前の操作に依存してもかまいません。例えば、新規エレメントを SMO にコピーする Copy 操作と、新規エレメントに値を設定するようなその後の操作を定義することができます。
Message Element Setter メディエーション・プリミティブを他のメディエーション・プリミティブに結合すると、さまざまな場合に役立ちます。 例えば、Database Lookup メディエーション・プリミティブが起動された前か後にデータを操作する必要がある場合は、Message Element Setter メディエーション・プリミティブを使用できます。
また、Message Element Setter メディエーション・プリミティブで、メッセージをフィルター処理した後に、Message Filter メディエーション・プリミティブを使用してメッセージを変更することもできます。 また、フィルター処理の後に、特定のメッセージ・エレメントを更新または削除できます。
追加、変更、または削除するメッセージ・エレメント。
WebSphere® Integration Developer で、「追加」をクリックしてメッセージ・エレメントの更新を指定します。 更新の定義を完了すると、更新が「メッセージ・エレメント」テーブルに表示されます。メッセージ・エレメントをテーブルの中で上下に移動させることによって、メッセージ・エレメントの更新が行われる順序を変更できます。
ターゲット・エレメントを定数値に設定する場合は、ターゲット XPath 式を単一のリーフ・エレメントに解決する必要があります。ソース・エレメントからターゲット・エレメントへコピーする場合は、ソースとターゲットの両方が単一のメッセージ・エレメント (単一のリーフまたはサブツリー) に解決される XPath 式を指定する必要があります。
複数のターゲットを設定すると、更新は順次に行われます。 そのため、値が 13 であったエレメント X の値を 14 に設定し、エレメント Y をエレメント X の値に設定すると、メディエーションはエレメント X を値 14 に、エレメント Y を値 14 に設定します。
同じターゲット・エレメントを複数回指定した場合は、ターゲット・エレメントに対して実行された最新の操作が優先されます。
「ターゲット」に定数値を設定する場合は、「タイプ」に単純な XML スキーマ・タイプまたは単純な XML スキーマ・タイプを拡張した XML スキーマ・タイプを指定する必要があります。
プロパティー | 有効な値 | デフォルト | |
---|---|---|---|
メッセージ・エレメント | アクション | Set、Copy、Append、または Delete | Set |
ターゲット | XPath 式 | ||
型 | データ・タイプ | ||
値 | 「型」プロパティーと互換性のある値 注: Set のみで使用されます。
|
||
ソース | XPath 式 注: Copy または Append のみで使用されます。
|
||
入力の妥当性検査 | ブール値: true または false | false |
Message Element Setter メディエーション・プリミティブを使用する場合は、以下を考慮する必要があります。