ページの先頭行へ戻る
SystemwalkerRunbook Automation V14g BPM Studio利用ガイド

12.7.2 Webサービスの呼び出し

Webサービスの呼び出しについて説明します。

前提条件は以下です。

「Webサービス呼出し」Java Actionを使用して、Interstage BPMからWebサービスを呼び出すことができます。「Webサービス呼び出し」Java Actionは、任意のノードに割り当てることも、プロセス定義自体に割り当てることもできます。また、Web Serviceノードでは、このJavaActionだけ割り当てることができます。

Webサービスを呼び出す方法について説明します。

  1. [プロパティー]ビューを表示するために、プロセス定義エディタ内の空のスペースをクリック、または、Java Actionを設定するノードを選択します。

  2. [アクションセット]タブを選択します。Java Actionを追加する場所を選択し、[追加]をクリックします。[アクションタイプリスト]ダイアログが表示されます。

  3. [連携アクション]を展開し、[Webサービス呼出し]をダブルクリックします。

  4. [Webサービス呼び出し]ダイアログで、Java Actionのアクション名とノートを入力します。

  5. [WSDLロケーション]フィールドにWSDL文書のURLを入力します。

    • WSDL文書のURLがわかっている場合は、[WSDL ロケーション]フィールドにそのURLを入力します。

    • URLがわからない場合は、[参照]をクリックすると、[UDDIブラウザ]ダイアログが表示されます。[UDDIブラウザ]ダイアログで[Search]をクリックし、Webサービスを検索します。WSDL文書のUDDIレジストリを問い合わせます。

    • WSDL文書のURLを動的に変更したい場合は、UDA あるいはアプリケーション変数を使用します。この場合、WSDL文書のURLをUDAまたはアプリケーション変数の値に事前に定義します。

      図12.43 WSDL文書の検索

      注意

      [UDDIブラウザ]ダイアログに、デフォルトのUDDI Query Serverを表示するための設定について説明します。

      1. Interstage BPM Studio for Systemwalkerを終了します。

      2. twf.iniファイルを開きます。以下に、格納されています。

        <Interstage BPM Studio for Systemwalkerインストールディレクトリ>\ibpm\Data\bin

      3. 以下のURLを入力します。:

        UDDIInquiryURL=<URL of a UDDI query server>[,<URL of a UDDI query server> ...]

      4. 更新したファイルを保存します。

      5. Interstage BPM Studio for Systemwalkerを起動します。

    UDDIレジストリを問い合わせるときには、以下に留意してください。

    • [UDDI Query Server]フィールドに照会URLを入力します。

    • 検索条件として、Webサービス名、Webサービスプロバイダ、またはtModelを指定できます。

    • 検索条件では、1つまたは複数の文字の代わりに、パーセント記号(%)をワイルドカードとして使用できます。

    • 使用するWebサービスが見つかったら、WSDL文書のURLが[WSDL URL]フィールドに表示されていることを確認します。次に、[UDDIブラウザ]ダイアログで[OK]をクリックすると、[Webサービス呼び出し]ダイアログに戻ります。

      図12.44 WSDL文書の配置場所の指定

  6. 使用するオペレーションを以下の手順で指定します。

    1. [オペレーション]タブを選択します。

    2. 指定されたサービスとポートで使用可能なオペレーションの1つを選択します。

      図12.45 オペレーションの選択

  7. 選択したオペレーションの入力パラメータを以下の手順で指定します。

    1. [入力]タブを選択します。

      このタブには、Webサービスに送信されるSOAP要求メッセージが表示されます。このメッセージには、オペレーションが必要とする入力パラメータが含まれています。[XPath]列には、パラメータがXPath式として表示されます。

    2. [値]列で、オペレーションに渡す値を含むUDAを指定します。

      図12.46 オペレーションの入力パラメータの指定

    高度なオプションの説明については、「12.7.3 Webサービス: SOAP要求メッセージ用の特殊タグ」を参照してください。

  8. SOAP要求メッセージが外部アプリケーションによって作成される場合は、以下の操作を行います。

    1. SOAP要求メッセージを含むUDAを追加したことを確認します。

    2. [入力]タブで、[UDAからSOAP要求を選択]チェックボックスをオンします。ドロップダウンリストから、SOAP要求メッセージを含むUDAを選択します。リストにはSTRING型またはXML型のUDAのみが含まれます。

      図12.47 外部システムから提供されるSOAP要求メッセージ

    この場合は、[SOAP要求メッセージ]領域に表示されるメッセージは使用されません。

  9. 選択したオペレーションの戻り値をUDAにマッピングします。

    1. [出力]タブを選択します。

    2. [UDA名]フィールドをクリックし、戻り値を保存するUDAを選択します。

      Webサービスは、オペレーションの戻り値をSOAP応答メッセージとして送信します。

    3. [UDAのXPath]フィールドをクリックし、戻り値を保存するUDAのXML文字列内に入力します。このXPathフィールドは、XML型のUDAを選択したときのみアクティブになります。

    4. オプション: XPathを編集する場合は、カラムの右端のボタンをクリックします。[XPath エディタ]ダイアログが表示され、XPathを編集できます。

      注意

      [XPath]コンボボックスに、編集されたXPathが表示されます。

      注意

      [XPath]ドロップダウンリストには、選択されたXMLタイプのユーザ定義属性に関連するXPathのリストが表示されます。 選択されたユーザ定義属性でXMLスキーマが定義されている時、このXMLスキーマで使用できるXPathのリストを表示します。 選択されたユーザ定義属性でXML(初期)値が定義されている場合は、このXML(初期)値で使用できるXPathのリストを表示します。 両方定義されている場合は、XMLスキーマで使用できるXPathのリストを表示します。

      注意

      XPath エディタはXPathの構文のチェックを行うのみです。編集されたXPathが存在するかどうかチェックしません。

    5. [SOAP応答メッセージのXPath]フィールドで、SOAP応答メッセージ内の戻り値の場所を指定します。

    6. 行を追加する必要がある場合は、[追加]をクリックします。

      戻り値が複数ある場合は、複数のUDAへのマッピングが必要なこともあります。たとえば、航空便のデータを返すようなWebサービスを呼び出す場合は、航空便の番号、航空会社、搭乗日などのデータを保存する複数のUDAが必要です。

    7. マッピングを削除する場合は、削除するマッピングを選択し、[削除]をクリックします。

      図12.48 戻り値のUDAへのマッピング

    注意

    SOAP応答メッセージの構造がわからない場合は、Webサービスの呼出しをテストして、サンプルメッセージを取得します。このメッセージを使用することで、必要なXPath式を判断できます。

  10. Webサービスへのアクセスにユーザアカウントを必要とする場合は、以下の操作を行います。

    1. [セキュリティ]タブを選択します。

    2. ユーザ名とパスワードを入力します。

  11. サンプルの値でWebサービス呼出しをテストする場合は、以下の操作を行います。

    1. [入力]タブを選択します。

    2. [XML]をクリックして[XML]ビューに切り替えます。

    3. {{Field <UDA>}}タグをサンプルの値に置き換えます。

      下の図は、サンプルの値に置き換える前のSOAP要求メッセージを示しています。

      図12.49 UDAを使用したSOAP要求メッセージ

      下の図は、サンプルの値に置き換えた後のSOAP要求メッセージを示しています。

      図12.50 テスト用のサンプルの値を使用したSOAP要求メッセージ

    4. [テスト]タブを選択し、[テスト]をクリックします。

    5. 想定したとおりのSOAP応答メッセージが表示されることを確認します。エラーが発生した場合は、入力データを確認してテストを繰り返します。

    6. [入力]タブで、SOAP要求メッセージを元の状態に復元します。復元するには、値を右クリックし、元の式を選択します。

  12. [OK]をクリックします。

注意

インターネット上のWebサービスを呼び出すときに、プロキシサーバ経由でインターネットにアクセスする場合は、プロキシサーバを使用するようにInterstage BPM Studio for Systemwalkerを構成する必要があります。そのためには、環境設定ファイルtwf.ini内にWSHttpProxyHostパラメータとWSHttpProxyPortパラメータを設定します。この環境設定ファイルは、<Interstage BPM Studio for Systemwalkerのインストールディレクトリ>¥ibpm¥Data¥binフォルダ内にあります。Interstage BPMサーバ用のパラメータは、データベース内のIBPMPropertiesテーブルにも格納されています。詳細については、『Interstage BPMサーバ 管理者ガイド』を参照してください。