assignアクティビティ

このアクティビティには、変数の内容を別の変数にコピーする操作など、データ操作のメソッドが用意されています。コピー操作により、変数、式、エンドポイントおよびその他の要素の間で情報を転送できます。

図A-2に、BPEL 1.1における「割当て」ダイアログの「コピー・ルール」タブを示します。次の方法のいずれかで、ツリー内のソース・ノードとターゲット・ノードの間のマッピングを作成します。

  • ソース・ノードをターゲット・ノードにドラッグして、ソース・ノードからターゲット・ノードへのBPELコピー・ルールを作成します。このアクションで、ソースとターゲットのタイプを接続する線が作成されます。

  • ソース・ノードを選択してから、ターゲット・ノードを選択し、ダイアログの下部にある表の上の「追加」アイコンをクリックします。その後、マッピングが表に追加され、それらのノード間の接続線がツリー内に描画されます。

コピー・ルールは、ダイアログの下部にある「開始」セクションと「終了」セクションに表示されます。

図A-2 割当ての編集ダイアログの「コピー・ルール」タブ

図A-2の説明が続きます
「図A-2 割当ての編集ダイアログの「コピー・ルール」タブ」の説明

ソース・ノード・セクションの上にある「挿入モードの選択」リストを使用すると、作成する次のコピー・ルールを、ダイアログの下部で選択されているルールの前か後ろに挿入できます。

ターゲット・ノードの上に表示されるアイコンを使用すると、ターゲット・ノードに対して次のタスクを実行できます(左から右の順)。デフォルトでは、センター・キャンバスが開きます。それが閉じている場合は、開いているバーをドラッグし、センター・キャンパスを表示します。

  • 「式」アイコン: このアイコンをターゲット・ノードにドラッグすると、そのノードにXPath式を割り当てるための「式ビルダー」ダイアログが開きます。このアイコンを、センター・キャンバスにドラッグしてこのダイアログを呼び出し、式を指定し、ダイアログを保存して閉じ、アイコンをターゲット・ノードにドラッグすることもできます。

  • 「リテラル」(BPEL 2.0仕様)アイコンまたは「フラグメント」(BPEL 1.1仕様)アイコン: このアイコンをターゲット・ノードにドラッグすると、そのターゲット・ノードにリテラル(BPELプロジェクトがBPEL 2.0仕様をサポートしている場合)またはXMLフラグメント(BPELプロジェクトがBPEL 1.1仕様をサポートしている場合)を割り当てるためのダイアログが開きます。このアイコンを、センター・キャンバスにドラッグしてこのダイアログを呼び出し、値を指定し、ダイアログを保存して閉じ、アイコンをターゲット・ノードにドラッグすることもできます。

  • 「削除」アイコン: このアイコンをターゲット・ノードにドラッグして、bpelx:remove拡張ルールを作成します。このアイコンを、センター・キャンバスにドラッグしてこのダイアログを呼び出し、ルールを指定し、ダイアログを保存して閉じ、アイコンをターゲット・ノードにドラッグすることもできます。

  • 「名前の変更」アイコン: このアイコンをドラッグして、ターゲット・ノードの名前を変更します。こうすると、elementTo属性にbpelx:rename拡張ルールが追加されます。このアイコンを、センター・キャンバスにドラッグしてダイアログを呼び出し、ルールを指定し、ダイアログを保存して閉じ、アイコンをターゲット・ノードにドラッグすることもできます。

  • 「再キャスト」アイコン: このアイコンをドラッグして、ターゲット・ノードを再キャストします。こうすると、typeCastTo属性にbpelx:rename拡張ルールが追加されます。XML出力で、xsi:type属性になります。このアイコンを、センター・キャンバスにドラッグしてダイアログを呼び出し、ルールを指定し、ダイアログを保存して閉じ、アイコンをターゲット・ノードにドラッグすることもできます。

選択したコピー・ルールをbpelx拡張タイプ(bpelx:copyListbpelx:insertAfterbpelx:insertBeforebpelx:append)に変更することもできます。

選択の方法は、BPEL 1.1とBPEL 2.0で異なります。

図A-3に、BPEL 1.1における拡張タイプの選択方法を示します。コピー・ルールを選択して「コピー」ドロップダウン・リストを選択し、適切な拡張を選択します。

図A-3 コピー・ルールをBPEL 1.1のbpelx拡張に変更

図A-3の説明が続きます
「図A-3 コピー・ルールをBPEL 1.1のbpelx拡張に変更」の説明

図A-4に、BPEL 2.0における拡張タイプの選択方法を示します。コピー・ルールを右クリックしてルール・タイプの変更を選択し、適切な拡張を選択します。

図A-4 コピー・ルールをBPEL 2.0のbpelx拡張に変更

図A-4の説明が続きます
「図A-4 コピー・ルールをBPEL 2.0のbpelx拡張に変更」の説明

bpelx拡張によるXMLデータの操作の詳細は、「bpelx拡張要素を使用したXMLデータの操作」を参照してください。

「送信元XPath」「送信先XPath」の各フィールドで、ソース・タイプの左にあるアイコンにカーソルを重ねて、実行する操作(コピー、追加など)を表示することもできます。それぞれの操作が、タイプごとに異なるアイコンで表されます。コピー・ルールを右クリックして、実行するアクションのリストを表示することも可能です。

  • 「'From'式の編集」または「'To'式の編集」: 作成したコピー・ルールにソース・ノードまたはターゲット・ノードへの問合せが含まれるときにXPath式を編集するには、このオプションを選択します。これを選択すると、「式ビルダー」ダイアログが開きます。表示されるメニュー・オプションは、コピー・ルールの現在の選択内容によって異なります。

  • ignoreMissingFromData: コピー・ルールのignoreMissingFromData属性の有効と無効を切り替える場合は、このオプションを選択します。有効にすると、bpel:selectionFailure標準フォルトが抑制されます。詳細は、「ignoreMissingFromData属性」を参照してください。

  • insertMissingToData: コピー・ルールのinsertMissingToData属性の有効と無効を切り替える場合は、このオプションを選択します。詳細は、「insertMissingToData属性」を参照してください。

  • keepSrcElementName (BPEL 2.0プロジェクトでのみ): コピー・ルールのkeepSrcElementName属性の有効と無効を切り替える場合は、このオプションを選択します。このオプションを使用すると、ターゲットの要素名(to-specで指定される)を、ソースの要素名で置き換えることができます。

  • ルール・タイプの変更 (BPEL 2.0プロジェクトでのみ): 選択したルールのタイプを、BPEL拡張ルールであるbpelx:copyListbpelx:insertAfterbpelx:insertBeforebpelx:appendのいずれかに変更する場合は、このオプションを選択します。

  • 「ルールの削除」: 選択したルールを削除する場合は、このオプションを選択します。

ignoreMissingFromDatainsertMissingToDatakeepSrcElementNameの各属性の詳細は、「assign拡張要素の属性の使用方法」を参照してください。

「終了」セクションの上にあるアイコンを使用すると、選択したコピー・ルールの追加、削除および上下への移動が可能です。

assignアクティビティの詳細は、「コピー・ルール」ダイアログのオンライン・ヘルプおよび「BPELプロセスでのXMLデータの操作」を参照してください。

ノート:

assignアクティビティに複数のbpelx:append設定が含まれる場合は、このアクティビティを2つのassignアクティビティに分割する必要があります。分割しないと、bpelx:appendがそれぞれリストの最後に移動し、問題が発生する可能性があります。解決策として、この設定を手動で移動します。