pickアクティビティ

このアクティビティは、イベント・セット内の特定イベントの発生を待機し、そのイベントに関連するアクティビティを実行します。多くの場合、イベントの発生は相互に排他的です(プロセスは承認メッセージと却下メッセージの両方ではなくどちらかを受信します)。複数のイベントが発生した場合、実行するアクティビティは、どちらのイベントが先に発生したかに基づいて選択されます。イベントがほとんど同時に発生した場合は競争になり、実行するアクティビティはタイミングと実装の両方に基づいて選択されます。

pickアクティビティには、OnMessageブランチがあります。BPEL 2.0で「onMessage」アイコンをクリックすると、図A-26に示すダイアログが表示されます。

図A-26 「onMessage」ダイアログ

図A-26の説明が続きます
「図A-26 「onMessage」ダイアログ」の説明

pickアクティビティの2つのブランチは次のとおりです。

  • OnMessage (pickアクティビティ・アイコンの下に自動的に表示されます)

    (融資サービスなどから)リプライを受信するためのコードが含まれています。

  • OnAlarm (自動的には表示されません。pickアクティビティ・アイコンを選択して「OnAlarmの追加」アイコンをクリックし、手動で追加する必要があります)

    タイムアウト(1分後など)のコードが含まれています。

先に完了したブランチが実行されます。もう一方のブランチは実行されません。最初に条件が満たされたブランチが実行されます。

図A-27は、BPEL 2.0でのpickアクティビティの「OnAlarm」ダイアログを示しています。

図A-27 PickアクティビティのOnAlarmブランチ・ダイアログ

図A-27の説明が続きます
「図A-27 PickアクティビティのOnAlarmブランチ・ダイアログ」の説明

ノート:

BPEL 1.1のscopeアクティビティにおけるOnMessageブランチと、BPEL 1.1および2.0のscopeアクティビティにおけるOnAlarmブランチも作成できます。Oracle JDeveloperscopeアクティビティを開き、左側でアイコンを参照して追加するブランチを検索します。

onMessageブランチに相関を追加する場合は、相関構文がassignアクティビティの構文の後ろに配置されます。相関構文をassignアクティビティの前に移動する必要があります。