ページの先頭行へ戻る
Interstage Business Application Server アプリケーション開発ガイド
FUJITSU Software

5.2.4 ルーティング定義

ルーティング定義画面は、メッセージのルーティング先の指定、および業務処理実行アプリケーションの呼び出し順序指定などのアプリケーション連携フローを設計する機能を提供します。

5.2.4.1 ルーティング定義画面の概要

フロー定義エディタの[ルーティング定義]タブをクリックすると、ルーティング定義画面が表示されます。

ルーティング定義画面の画面構成を、以下に示します。

(1) ツールバー部:ルーティング定義で使用可能なアイコンが配置されています。

(2) パネル部:ツールバー部で選択されたアイコンを配置する領域です。

以下に、ルーティング定義画面のイメージを示します。

ルーティング定義画面におけるツールバーの構成とパネル部へ配置した際のイメージ、およびそれぞれの用途は、以下のとおりです。

No.

ツールバーアイコン

パネル部の表示

アイコン名

用途

(1)

(なし)(注)

開始点

ルーティング定義における開始点を表します。
詳細については、“5.2.4.2 開始の設定”を参照してください。

(2)

アクティビティ

キューの定義、およびメッセージの受信時に呼び出す業務処理実行アプリケーションを定義します。アイコンには、言語の区別(JavaまたはCOBOL)が表示されます。
詳細については、“5.2.4.3 アクティビティの設定”を参照してください。

(3)

実行ルート

メッセージのルーティング先を指定します。
詳細については、“5.2.4.4 実行ルートの設定”を参照してください。

(4)

同報・条件分岐

メッセージを複数のアクティビティに同報送信する場合、または条件指定によりメッセージを振り分ける場合の分岐点となります。
詳細については、“5.2.4.4 実行ルートの設定”、“5.2.4.5 条件ルートの設定”を参照してください。

(5)

条件ルート

同報・条件分岐から遷移するメッセージの内容を条件式で評価し、結果がtrueとなる場合のルーティング先を定義します。
詳細については、“5.2.4.5 条件ルートの設定”を参照してください。

(6)

代行分岐

送信先のキューが閉塞状態であった場合の代行のルーティング先を指定するための分岐点となります。
詳細については、“5.2.4.6 代行ルートの設定”を参照してください。

(7)

代行ルート

メッセージの代行のルーティング先を指定します。
詳細については、“5.2.4.6 代行ルートの設定”を参照してください。

(8)

終了点

メッセージを発行する業務処理開始アプリケーションで、処理結果のメッセージを取得するための定義を行います。
詳細については、“5.2.4.8 終了の設定”を参照してください。

注) (1)はパネル部に初期状態で配置されるため、ツールバーからの追加はできません。

ルーティング定義におけるアクティビティや実行ルートなどの詳細情報は、アイコンをダブルクリックした際に表示されるダイアログボックスで設定することができます。ダイアログボックスをもつアイコンは、上記の中で(2)アクティビティ、(3)実行ルート、(5)条件ルート、(8)終了点です。

注意

  • アイコンの付加情報の表示について

    アクティビティのアイコン、および条件ルートには、その詳細情報の一部が表示されます。最大8文字まで表示可能です。詳細情報が9文字以上の場合は、以下のように8文字目が省略表示“…”となります。

  • アイコンの設定が不十分な状態における表示について

    ルーティング定義画面の編集中において、アイコンとルートの関連付けの設定が不十分な場合、または詳細情報にエラーがある場合、該当する箇所にが表示されます。

5.2.4.2 開始の設定

開始点は、フローの開始を意味します。開始点のアイコンは、画面の初期状態で1つ表示されており、追加・削除を行うことはできません。また、開始点には詳細情報を設定するダイアログボックスはありません。開始点のアイコンは、ルーティング定義画面上では以下のイメージで表示されます。

5.2.4.3 アクティビティの設定

アクティビティの設定では、キューの定義、およびメッセージの受信時に呼び出す業務処理実行アプリケーションを定義します。

アクティビティのアイコンは、ルーティング定義画面上では以下のイメージで表示されます。アイコンには、言語の区別(COBOLまたはJava)が表示されます。

  

アクティビティのアイコンをダブルクリックすると、アクティビティ定義のダイアログボックスが表示されます。[アクティビティ定義]画面では、以下の詳細情報を定義します。

注意

アクティビティ定義では、定義情報が完全でない状態でもダイアログボックスを閉じることが可能です。ただし、定義情報が完全でない状態で[OK]をクリックした場合は、定義エラーが存在する状態で編集内容を確定するかどうかを確認するダイアログボックスが表示されます。このダイアログボックスで[いいえ]をクリックした場合は、エラー箇所にカーソルを位置付けます。

業務処理実行アプリケーションの定義

業務処理実行アプリケーションの定義では、メッセージを受信した際に呼び出す業務処理実行アプリケーションについての定義を行います。

[アクティビティ定義]画面を開き、[業務処理実行アプリケーション]タブをクリックすると、設定画面が表示されます。

以下に、画面イメージと各部品の説明を示します。

  1. [アプリケーションの説明]

    業務処理実行アプリケーションを識別するための説明を設定します。設定された値は、アクティビティのアイコンの付加情報として下図のように表示されます。

  2. [呼出し定義]

    メッセージの入出力を行う業務処理実行アプリケーションで受け渡す業務データを定義する[呼出し定義]画面を開きます。

    参照

    上記の各定義項目に関する規約については、“付録E 定義規約”を参照してください。

    ポイント

    資源定義の設定は、バッチ実行基盤のフロー定義でのみ使用します。

呼出し

呼出し定義では、メッセージの入出力を行う業務処理実行アプリケーションの業務処理またはメソッドを定義します。入力情報となる業務データを業務処理またはメソッドの引数に設定し、出力情報を格納する業務データを業務処理またはメソッドの復帰値に設定します。Javaの場合、複数のメソッドを定義し、呼び出す順序を指定することも可能です。

[アクティビティ定義]画面の[業務処理実行アプリケーション]タブ内の[呼出し定義]をクリックすると、設定画面が表示されます。

以下に、画面イメージと各部品の説明を示します。

参照

上記の各定義項目に関する規約については、“付録E 定義規約”を参照してください。

ポイント

  • 呼出し対象のメソッドに資源の一覧を入力するかどうかの設定は、バッチ実行基盤のフロー定義でのみ使用します。

  • 業務データ定義画面で業務データ名を変更した際、[呼出し定義]画面でその業務データが使用されている場合、連動して定義内容を変更するかどうかを確認するダイアログボックスが表示されます。

    • [業務データ名の変更をすべての使用箇所に適用します。]をチェックして[OK]をクリックした場合、[呼出し定義]画面内の該当する業務データ名が、一括で変更されます。

    • [業務データ名の変更をすべての使用箇所に適用します。]をチェックしないで[OK]をクリックした場合、業務データ名の変更は確定しますが、[呼出し定義]画面内の該当する業務データ名は変更されません。この場合、業務データ定義画面と[呼出し定義]画面の業務データ名で差異が生じます。差異が生じた箇所は、[呼出し定義]画面で以下のように表示されます。

    • [キャンセル]をクリックした場合は、業務データ定義画面における業務データ名の変更を取り消します。[呼出し定義]画面内の該当する業務データ名も変更されません。

■メッセージ格納キューの定義

メッセージ格納キューの定義では、メッセージを受信するキューに関する定義を行います。

[アクティビティ定義]画面を開き、[メッセージ格納キュー]タブをクリックすると、設定画面が表示されます。

以下に、画面イメージと各部品の説明を示します。

  1. [処理要求メッセージ格納キュー名称]

    ルーティング定義画面上にあるアクティビティのキューを識別するための名称を設定します。なお、[処理要求メッセージ格納キュー名称]は、説明のための情報であり、非同期アプリケーション連携実行基盤の運用には関係ありません。Destination名と設計上のキュー名称が一致しない場合や、フロー定義で指定したDestination名に対応する設計名を指定する場合などに、コメント欄として使用してください。

  2. [処理要求メッセージ格納キュー(Destination)]

    キューのDestination名を入力します。プロパティ画面の[省略時に使用するキュー(Destination)]に値を設定することで、省略できます。ただし、[省略時に使用するキュー(Destination)]が設定されていない場合、またはそのアクティビティが代行ルートの出力先になっている場合には、入力は必須となります。[省略時に使用するキュー(Destination)]については、“5.2.6 プロパティ”を参照してください。

    参照

    上記の各定義項目に関する規約については、“付録E 定義規約”を参照してください。

    注意

    • 同じ処理要求メッセージ格納キューを1つのルート上に複数使用することも可能です。その場合、キューごとに異なる業務処理実行アプリケーションを定義することが可能となります。ただし、代行ルート上のアクティビティと、通常ルート上のアクティビティでは、同じキューを指定することはできません。

    • 1つの処理要求メッセージ格納キューを、複数のフロー定義で配置することが可能です。その場合、おのおので異なる業務処理実行アプリケーションを定義することも可能となります。

    • 処理要求メッセージ格納キューを未設定のまま定義情報を保存した場合、定義ファイルをフロー定義DBへ登録する際に、プロパティ画面の[省略時に使用するキュー(Destination)]の値が自動的に設定されます。詳細については、“5.2.6 プロパティ”を参照してください。

補償ルート定義

5.2.4.7 補償ルートの設定”の“■アクティビティ定義における補償ルートの設定”を参照してください。

5.2.4.4 実行ルートの設定

実行ルートの設定では、非同期アプリケーション連携実行基盤におけるメッセージのルーティング先を定義します。実行ルートは、ルーティング定義画面上では以下のイメージで表示されます。

実行ルートをダブルクリックすると、実行ルート定義のダイアログボックスが表示されます。[実行ルート定義]画面では、以下の詳細情報を定義します。

通常ルートの設定

通常ルートの設定では、メッセージに含める業務データ、およびそのメッセージの優先度を定義します。

[実行ルート定義]画面を開き、[通常ルート]タブをクリックすると、設定画面が表示されます。

以下に、画面イメージと各部品の説明を示します。

  1. [メッセージに含める業務データ]

    実行ルート上のメッセージに含める業務データを指定します。

  2. [->]

    業務データを、[メッセージから削除する業務データ]の一覧に移動します。業務データは、一覧内で複数選択して移動することが可能です。

  3. [<-]

    業務データを、[メッセージに含める業務データ]の一覧に移動します。業務データは、一覧内で複数選択して移動することが可能です。

  4. [メッセージから削除する業務データ]

    実行ルート上のメッセージから削除する業務データを指定します。業務データ定義画面でコリレーションIDとして設定された業務データは、メッセージから削除することはできません。

  5. [メッセージ優先度設定]

    [メッセージ優先度設定]画面を表示して、メッセージの優先度を条件により設定します。[メッセージ優先度設定]画面については、“5.2.4.5 条件ルートの設定”の“■メッセージ優先度の設定”を参照してください。

    注意

    • [実行ルート定義]画面の初期状態では、すべての業務データが[メッセージに含める業務データ]の一覧に設定されます。ただし、フロー定義名を意味する業務データについては、必ずメッセージに含まれることになっており、削除する対象に指定する必要がないため、この一覧には表示されません。フロー定義名を意味する業務データについては、“5.2.3.1 業務データ定義画面の概要”を参照してください。

    • 業務データ定義画面で業務データ名を変更した際に、[実行ルート定義]画面([条件ルート定義]画面についても以下同様)でその業務データが使用されている場合、連動して定義内容を変更するかどうかを確認するダイアログボックスが表示されます。

      • [業務データ名の変更をすべての使用箇所に適用します。]をチェックして[OK]をクリックした場合、[実行ルート定義]画面内の該当する業務データが、一括で変更されます。

      • [業務データ名の変更をすべての使用箇所に適用します。]をチェックしないで[OK]をクリックした場合、業務データ名の変更は確定しますが、[実行ルート定義]画面内の該当する業務データ名は変更されません。この場合、業務データ定義画面と[実行ルート定義]画面の業務データで差異が生じます。差異が生じた箇所は、[実行ルート定義]画面で以下のように表示されます。

      • [キャンセル]をクリックした場合は、業務データ定義画面における業務データ名の変更を取り消します。[実行ルート定義]画面内の該当する業務データ名も変更されません。

補償ルートの設定

補償ルートの設定では、補償処理メッセージが通過するための補償ルートを定義します。補償ルートの設定については、“5.2.4.7 補償ルートの設定”の“■実行ルート定義、または条件ルート定義における補償ルートの設定”を参照してください。

メッセージの同報送信について

実行ルートは、同報・条件分岐を用いることにより、複数のルーティング先へのメッセージの同報送信を指定することができます。同報・条件分岐には、詳細情報を設定するためのダイアログボックスはありません。

同報・条件分岐により設定された同報送信の実行ルートは、ルーティング定義画面上で以下のように表示されます。

5.2.4.5 条件ルートの設定

条件ルートの設定では、業務データの値を条件式で判定した結果を元に、メッセージの送信先を振り分けるための定義を行います。条件ルートは、ルーティング定義画面上では以下のイメージで表示されます。

条件ルートは、始点を同報・条件分岐に関連付ける必要があります。同報・条件分岐は、ルーティング定義画面上では以下のイメージで表示されます。

同報・条件分岐は、ルートの分岐点を表すアイコンです。ただし、ルートを振り分けるための条件はそれぞれの条件ルートの詳細情報で設定するため、詳細情報を設定するためのダイアログボックスはありません。

同報・条件分岐には、複数の条件ルートを設定することも可能です。1つの同報・条件分岐から出る複数のルートにおいて、条件がtrueとなるルートが複数存在する場合、該当するすべてのルートへメッセージが送信されます。

同報・条件分岐により設定された条件ルートは、ルーティング定義画面上で以下のように表示されます。

条件ルートをダブルクリックすると、条件ルート定義のダイアログボックスが表示されます。[条件ルート定義]画面では、以下の詳細情報を定義します。

通常ルートの設定

通常ルートの設定では、メッセージに含める業務データ、およびそのメッセージの優先度と分岐条件を定義します。

[条件ルート定義]画面を開き、[通常ルート]タブをクリックすると、設定画面が表示されます。

以下に、画面イメージと各部品の説明を示します。

  1. [メッセージに含める業務データ]

    条件ルート上のメッセージに含める業務データを指定します。

  2. [->]

    業務データを、[メッセージから削除する業務データ]の一覧に移動します。業務データは、一覧内で複数選択して移動することが可能です。

  3. [<-]

    業務データを、[メッセージに含める業務データ]の一覧に移動します。業務データは、一覧内で複数選択して移動することが可能です。

  4. [メッセージから削除する業務データ]

    条件ルート上のメッセージから削除する業務データを指定します。業務データ定義画面でコリレーションIDとして設定された業務データは、メッセージから削除することはできません。

  5. [メッセージ優先度設定]

    [メッセージ優先度設定]画面を表示して、メッセージの優先度を条件により設定します。[メッセージ優先度設定]画面については、“■メッセージ優先度の設定”を参照してください。

  6. [メッセージ分岐条件設定]

    [メッセージ分岐条件設定]画面を表示して、業務データの値の条件によりメッセージのルーティング先を振り分ける設定を行います。[メッセージ分岐条件設定]画面については、“■メッセージ分岐条件の設定”を参照してください。

    注意

    • [条件ルート定義]画面の初期状態では、すべての業務データが[メッセージに含める業務データ]の一覧に設定されます。ただし、フロー定義名を意味する業務データについては、必ずメッセージに含まれることになっており、削除する対象に指定する必要がないため、この一覧には表示されません。フロー定義名を意味する業務データについては、“5.2.3.1 業務データ定義画面の概要”を参照してください。

補償ルートの設定

補償ルートの設定では、補償処理メッセージが通過するためのルートを定義します。補償ルートの設定については、“5.2.4.7 補償ルートの設定”の“■実行ルート定義、または条件ルート定義における補償ルートの設定”を参照してください。

メッセージ優先度の設定

メッセージ優先度の設定では、同一ルート上を流れるメッセージの優先度の変更を定義します。優先度を変更するには、メッセージに含まれる業務データの値に対する条件式を定義します。メッセージが条件式を設定したルート上を通過する際に条件式がtrueとなった場合、指定された優先度に変更します。メッセージの優先度制御に関する機能概要については、“4.3 フローの設計”の“■優先度制御機能”を参照してください。

[実行ルート定義]画面、または[条件ルート定義]画面の[メッセージ優先度設定]をクリックすると、以下のようなメッセージ優先度設定のダイアログボックスが表示されます。

  1. [比較元データ名]

    条件式の比較元となる業務データを指定します。

  2. [要素番号]

    該当するデータが配列型の場合に指定します。比較元データ、または比較対象値に指定されたデータが配列型以外の場合は指定できません。

  3. [比較条件]

    比較元データ名と比較対象値の比較条件として演算子を指定します。
    比較条件の詳細については、“■条件式における比較条件について”を参照してください。

  4. [比較対象値]

    条件式の比較対象となるデータを指定します。

  5. 複数の条件式を指定するための論理演算

    条件式は、最大5個まで指定することが可能です。それらの式の関係を、ANDまたはORの論理演算で指定します。条件式は、上に定義された方が優先して評価されます。

  6. [メッセージ優先度]

    ルートを通過する際のメッセージの優先度を指定します。上記1~5に示す部品で指定された条件を満たす場合だけ、メッセージの優先度を変更します。条件式が指定されない場合は、ルート上を通過するすべてのメッセージが選択された優先度に変更されます。

    メッセージ優先度は、以下の項目から選択します。

    選択項目

    説明

    受信した優先度を引き継ぐ

    メッセージを受信した際の優先度をそのまま引き継ぎ、優先度を変更しないでメッセージを送信します。

    高い

    メッセージがルートを通過する際、優先度を「高い」で送信します。優先度が「高い」で送信されたメッセージは、各キューの受信処理・送信処理で優先的に実行されます。

    普通

    メッセージがルートを通過する際、優先度を「普通」で送信します。優先度が「普通」で送信されたメッセージは、各キューの受信処理・送信処理で「高い」に次ぐ優先度で実行されます。

    低い

    メッセージがルートを通過する際、優先度を「低い」で送信します。優先度が「低い」で送信されたメッセージは、各キューの受信処理・送信処理で「普通」に次ぐ優先度で実行されます。

    参照

    上記の各定義項目に関する規約については、“付録E 定義規約”を参照してください。

メッセージ分岐条件の設定

メッセージ分岐条件の設定では、メッセージの経路の振り分けを定義します。経路の振り分けを設定するには、メッセージに含まれる業務データの値に対する条件式を定義します。メッセージは、メッセージ分岐条件の条件式がtrueとなった場合だけルートを通過することができます。

[条件ルート定義]画面の[メッセージ分岐条件設定]をクリックすると、以下のようなメッセージ分岐条件設定のダイアログボックスが表示されます。

  1. [条件不成立時に実行]

    [条件不成立時に実行]をチェックした場合、その条件ルートは、1つの同報・条件分岐から出力している複数の条件ルートにおいて、それらすべての条件が不成立であった場合に通過するルートとして扱われます。条件不成立時に実行するルートは、複数設定することも可能です。また、[条件不成立時に実行]をチェックした場合は、以下の2~6の条件式を入力することはできません。

    注意

    同報・条件分岐から実行すべき条件ルートがない場合に、条件不成立と判断します。1つの同報・条件分岐から出力しているルートがすべて条件不成立時の条件ルートである場合(通常の条件ルートが設定されていない場合)は、つねに条件不成立となり、条件不成立時の条件ルートが実行されます。

  2. [比較元データ名]

    条件式の比較元となる業務データを指定します。

  3. [要素番号]

    該当するデータが配列型である場合に指定します。比較元データ、または比較対象値に指定されたデータが配列型の場合は、必ず指定してください。

  4. [比較条件]

    比較元データ名と比較対象値の比較条件として演算子を指定します。比較条件の詳細については、“■条件式における比較条件について”を参照してください。

  5. [比較対象値]

    条件式の比較対象となるデータを指定します。

  6. 複数の条件式を指定するための論理演算

    条件式は、最大5個まで指定することが可能です。それらの式の関係を、ANDまたはORの論理演算で指定します。条件式は、上に定義された方が優先して評価されます。

    参照

    上記の各定義項目に関する規約については、“付録E 定義規約”を参照してください。

■条件式における比較条件について

比較元データと比較対象値を比較する際の条件について、以下に示します。

5.2.4.6 代行ルートの設定

代行ルートは、実行ルートへのメッセージ送信ができなくなった場合に備えるためのルートです。非同期アプリケーション連携実行基盤では、送信先のキューが閉塞状態の場合、または送信先のキューへの送信に失敗した場合、代行ルートへメッセージを自動的に送信します。

代行ルートは、ルーティング定義画面上では以下のイメージで表示されます。

代行ルートは、始点を代行分岐に関連付ける必要があります。代行分岐は、代行ルートの分岐点を表すアイコンです。ルーティング定義画面上では以下のイメージで表示されます。

代行分岐に入力するルートは、実行ルートにする必要があります。代行分岐に入力する実行ルートは、複数設定することも可能です。代行分岐から出力するルートは、実行ルートと代行ルートの1組で定義する必要があり、それ以上のルートは設定できません。ルーティング先は、どちらもアクティビティを指定する必要があります。

代行分岐により設定された代行ルートは、ルーティング定義画面上で以下のように表示されます。

代行ルート、および代行分岐には、詳細情報を設定するためのダイアログボックスはありません。

5.2.4.7 補償ルートの設定

補償ルートは、特定のアプリケーションで異常が発生した場合に、取消し用アプリケーションを呼び出すメッセージを送信するためのルートです。非同期アプリケーション連携実行基盤では、キューでメッセージを受信してから業務処理実行アプリケーションを呼び出し、次のキューへメッセージを送信するまでの間にユーザが指定した異常が発生した場合、メッセージが通過してきた処理を取り消すための補償処理メッセージを送信することができます。

補償処理メッセージは、ユーザが指定した補償ルートを通るメッセージであり、すでに処理が完了した業務処理実行アプリケーションに対し、取消し処理を行う業務処理実行アプリケーションを呼び出します。補償処理メッセージは、実行ルート、条件ルートに対して補償ルートを定義することで、異常が発生した際に受信したメッセージが通過してきた経路を逆に戻るようにルーティングされます。補償ルート制御に関する機能概要については“2.4.3 補償ルート制御機能”を参照してください。

補償ルートに関する設定は、以下の定義で行います。

■実行ルート定義、または条件ルート定義における補償ルートの設定

実行ルート定義、または条件ルート定義における補償ルートの設定では、補償ルートを通過するメッセージに含める業務データを定義します。

[実行ルート定義]画面、または[条件ルート定義]画面を開き、[補償ルート]タブをクリックすると、設定画面が表示されます。

以下に、画面イメージと各部品の説明を示します。なお、ここでは、[実行ルート定義]画面を例に説明します。[条件ルート定義]画面についても、画面構成は同じです。

  1. [補償ルートの指定]

    [補償ルートの指定]をチェックすると、以下2~5の設定が可能になります。ただし、補償ルートを指定できない箇所では、[補償ルートの指定]をチェックすることはできません。補償ルートの指定の可否に関する制約については、“付録E 定義規約”を参照してください。

    [補償ルートの指定]をチェックした状態で、[OK]をクリックしてダイアログボックスを閉じると、実行ルートを逆戻りする補償ルートが、ルーティング定義画面上に表示されます。

    • [補償ルートの指定]をチェックしていない状態

    • [補償ルートの指定]をチェックした状態

      補償ルートが設定されている実行ルートをルーティング定義画面上で削除した場合、連動して補償ルートも画面から削除されます。

  2. [メッセージに含める業務データ]

    補償ルート上のメッセージに含める業務データを指定します。

  3. [->]

    業務データを、[メッセージから削除する業務データ]の一覧に移動します。業務データは、一覧内で複数選択して移動することが可能です。

  4. [<-]

    業務データを、[メッセージに含める業務データ]の一覧に移動します。業務データは、一覧内で複数選択して移動することが可能です。

  5. [メッセージから削除する業務データ]

    補償ルート上のメッセージから削除する業務データを指定します。業務データ定義画面でコリレーションIDとして設定された業務データは、メッセージから削除することはできません。

    参照

    実行ルート定義、または条件ルート定義における補償ルートの設定に関する定義例をまじえた詳細については、“3.1.7 補償ルート”を参照してください。

■アクティビティ定義における補償ルートの設定

アクティビティ定義における補償ルートの設定では、補償ルートを実行する契機となるアプリケーション異常、および補償処理メッセージを受信した際に呼び出す補償処理用アプリケーションを定義します。

補償ルートを実行する契機となるアプリケーション異常には、COBOLのアクティビティではエラーコードを指定します。Javaのアクティビティではアプリケーション例外を指定します。アプリケーション例外を指定する際は、契機から除外する異常も指定することができます。補償処理用アプリケーションの定義では、業務処理実行アプリケーションと同様の呼出し定義を行います。

補償ルートを実行する異常

補償ルートを実行する異常は、[アクティビティ定義(COBOL)]画面、または[アクティビティ定義(Java)]画面の[補償ルート]タブで設定します。

以下に、画面イメージと各部品の説明を示します。

◆補償処理用アプリケーションの呼出し定義

補償処理メッセージを受信した際に呼び出す補償処理用アプリケーションの設定は、[アクティビティ定義(COBOL)]画面、または[アクティビティ定義(Java)]画面の[補償ルート]タブ内で、[呼出し定義]をクリックして表示される[呼出し定義]画面で行います。

  1. [呼出し定義]

    補償処理メッセージ受信後の補償処理実行時に呼び出すアプリケーションを指定する[呼出し定義]画面を表示します。呼出し定義の詳細については、“5.2.4.3 アクティビティの設定”の“◆呼出し定義”を参照してください。

    注意

    複数のアクティビティを横断する補償ルート上において、取消し処理用の業務処理実行アプリケーションの呼び出しが不要なアクティビティがある場合は、そのアクティビティにおける補償ルートの呼出し定義を、未定義の状態(初期状態)にしてください。一度、補償ルートの呼出し定義を確定した後、未定義の状態に戻したい場合は、[呼出し定義]画面の値を以下の状態にしたうえで[OK]をクリックしてください。

    • COBOLの呼出し定義の場合

      [業務処理実行アプリケーション名]

      値なし

      [業務処理名]

      値なし

      [復帰値を設定する業務データ]

      [復帰値なし(void)]

    • Javaの呼出し定義の場合

      [クラス名]

      値なし

      [呼出し対象のメソッド]

      0個

    取消し処理用の業務処理実行アプリケーションの呼び出しが不要な場合の設計方法については、“4.3 フローの設計”の“■補償処理を考慮した設計”を参照してください。

5.2.4.8 終了の設定

終了点は、業務処理開始アプリケーションで、処理結果のメッセージを取得するための定義を行います。終了点のアイコンは、ルーティング定義画面上では以下のイメージで表示されます。

終了点のアイコンをダブルクリックすると、以下のダイアログボックスが表示されます。

  1. [結果受信キュー(Destination)]

    結果受信用に使用するキューを指定します。
    メッセージを発行する業務処理開始アプリケーションで同期的にメッセージを発行する場合や、処理結果のメッセージを取得する場合は、必ず結果受信キューを指定してください。
    指定するキューは、アクティビティ定義で指定されていないキューである必要があります。また、ほかのフロー定義の待ち合わせ型で使用するキューと同じキューを指定することができます。

  2. [結果受信キューに格納するメッセージの有効期間]

    待ち合わせ型フロー起動APIのsendMessageSyncメソッドまたはフローの処理結果を取得するAPIのreceiveMessageメソッドを呼び出して処理結果のメッセージを取得した場合、そのメッセージは結果受信キューから削除されます。

    ただし、receiveMessageメソッドが発行されない場合などは、メッセージが削除されない可能性があります。この場合、結果受信キューに格納するメッセージの有効期間を指定することで、指定した期間を超えた時点でメッセージを自動的に削除することができます。

    単位は秒で指定してください。有効期間を無制限にする場合は、0を指定してください。

参照

上記の各定義項目に関する規約については、“付録E 定義規約”を参照してください。