この例では、簡単なデモ用の Web Service として、バーンズ・アンド・ノーブル書店の価格見積もりを呼び出すワークフローを作成する手順を概説します。
実行時に、起動ユーザーが ISBN を入力し、Invoke ステップがその ISBN 値を含む要求メッセージを指定された Web Service に送信し、Web Service が QuoteResult を返します。ユーザーは CheckPrice ステップを開いて、返された価格を確認します。
ワークフロー内で Web Service を呼び出すには
- プロセス構成コンソールで、次の手順にしたがって、ワークフロー作成者が Web サービスを選択できる UDDI レジストリーを指定します。
- アイソレート・リージョンを右クリックして、「プロパティー」を選択します。
- 「Web Services」タブで「UDDI」タブを選択し、「UDDI レジストリー・リスト」タブを開きます。「追加」をクリックし、この UDDI レジストリーの名前を次のように入力します:
xmethods_inq
- 「URL の照会」フィールドで次のように入力します。
http://uddi.xmethods.net/inquire
- 構成の変更をコミットします。
- 「Process Designer」でこのワークフローの名前と Web Services を指定します。
- 「「ワークフローのプロパティー」>>
「一般」タブで、ワークフローの名前と件名 (testInvokeBookPrice) を指定します。
- 「Web Services」タブで、パートナー・リンクを指定します。
- Web Services ステップ・パレットから、Invoke ステップをワークフロー・マップに追加します。
- 「ステップのプロパティー」ペインの「一般」タブで、「パートナー・リンク」の BookPrice を選択し、「オペレーション」の GetBNQuote を選択します。
- 「メッセージ・タイプ」で、「パラメーター」を選択します。
Process Designer は WSDL から、発信パラメーター (サービスの入力に必要) および着信パラメーター (サービスからの応答) を判断します。
- 「発信パラメーター」の sISBN の「式」フィールドの中をクリックし、<Create sISBN> を選択すると、適切な型 (文字列型) で、パラメーターと同じ名前のデータ・フィールドが自動的に作成されます。
- 「着信パラメーター」の GetBNQuoteResult の「式」フィールドの中をクリックし、<Create GetBNQuoteResult> を選択すると、BookPrice Web サービスからの価格見積もりの応答を含めるためのデータ・フィールドが自動的に作成されます。
- ワークフロー・マップ上で、Launch ステップを選択し、sISBN フィールドをパラメーターとして指定します。起動ユーザーはこの Web サービスの入力として、有効な ISBN を指定します。
- ユーザーがこの例の出力を確認できるように、Invoke ステップの後に Activity ステップを追加します。
- Activity ステップに、CheckPrice という名前を付けます。
- このステップの参加者として自分自身 (または F_Originator) を指定します。
- GetBNQuoteResult をパラメーターとして指定します。実行時に、このステップで返された価格の値を表示できます。
- 起動から Invoke へ、および Invoke から CheckPrice へのルートを追加します。
- このワークフロー定義を検証するために、保存してから、ワークフローを起動します。
- Launch ステップで、sISBN フィールドに ISBN (例: 0201750813) を入力します。
- 受信トレイを開き、CheckPrice ステップを開きます。GetBNQuoteResult データ・フィールドに、返された価格が表示されます。
ヒント:
- 呼び出したサービスから応答が返信され、Web Services キューが応答を処理して、受信トレイの CheckPrice ステップにルーティングするのに、数秒間待つことが必要な場合があります。
- 1 分経っても受信トレイに CheckPrice ステップが表示されない場合、管理者は Application Engine サーバー上の Process Task Manager を使用して、ws_request キューが実行中かどうかを確認できます。