Webサービストリガー

オペレーション名

Webサービストリガー

機能概要

Webサービストリガーは、指定したURLに対しWebサービスによるリクエストを送ることで、スクリプトを実行するトリガー機能です。

プロパティ

Webサービストリガーの設定
項目名 内容 備考
トリガー名 トリガーの名前を入力します。  
実行パス トリガーの実行パスを入力します。
  • デフォルト値は「/path」です。
  • 例:[実行パス]に「run」を指定した場合、トリガー実行のURLは以下のようになります。

    http://<DataSpiderServer稼働OSのホスト名またはIPアドレス>:<DataSpiderServerのポート番号>/dataspider/webServices/run

  • [コントロールパネル]-[DataSpiderServerの設定]-[セキュリティ]タブの[HTTPSを有効にする]にチェックを入れた場合、トリガー実行のURLは以下のようになります。

    https://<DataSpiderServer稼働OSのホスト名またはIPアドレス>:<DataSpiderServerのSSLポート番号>/dataspider/webServices/run

  • [実行パス]の最後に「?wsdl」を追加してアクセスすると、WSDLを取得することができます。

    例:http://<DataSpiderServer稼働OSのホスト名またはIPアドレス>:<DataSpiderServerのポート番号>/dataspider/webServices/<実行パス>?wsdl

  • [コントロールパネル]-[DataSpiderServerの設定]-[セキュリティ]タブの[HTTPSを有効にする]にチェックを入れた場合、WSDLを取得するURLは以下のようになります。

    https://<DataSpiderServer稼働OSのホスト名またはIPアドレス>:<DataSpiderServerのSSLポート番号>/dataspider/webServices/<実行パス>?wsdl

  • [実行パス]に全角文字を使用することはできません。
入出力処理形式 入出力変数として扱うデータの形式を選択します。
  • [SOAPボディのパラメータを受け渡す]:(デフォルト)
    SOAPボディのスキーマからパラメータを取得し、スクリプト変数に格納します。
    SOAPメッセージ内のパラメータのみを扱いたい場合に選択します。
  • [SOAPエンベロープを受け渡す]:
    SOAPリクエスト・SOAPレスポンスのエンベロープ全体をスクリプト変数に格納します。
    SOAPメッセージ内の項目を自由に扱いたい場合に選択します。
  • [SOAPボディのパラメータを受け渡す]を選択した場合、WSDLは自動で生成されます。
  • [SOAPボディのパラメータを受け渡す]を選択した場合、multiRef属性を含むSOAPボディからパラメータをスクリプト変数に格納することはできません。
  • [SOAPエンベロープを受け渡す]を選択した場合、WSDLを[WSDL定義]に手動で入力してください。
オペレーション名 WSDLに出力される「wsdl:operation」要素の「name」属性の値を入力します。
  • [入出力処理形式][SOAPボディのパラメータを受け渡す]を選択した場合、有効になります。
  • デフォルト値は「OperationName」です。
WSDL出力形式 WSDLの出力形式を選択します。
  • [document/literal]:(デフォルト)
    document/literal形式のWSDLを出力します。
  • [rpc/encoded]:
    rpc/encoded形式のWSDLを出力します。
  • [入出力処理形式][SOAPボディのパラメータを受け渡す]を選択した場合、有効になります。
WSDLにスクリプト変数名を使用する WSDLにスクリプト変数名を使用するかどうかを選択します。
  • [チェックあり]:(デフォルト)
    WSDL(SOAPエンベロープのパラメータ名)にスクリプト変数名を使用します。
  • [チェックなし]:
    WSDL(SOAPエンベロープのパラメータ名)にスクリプト変数の数をもとに自動的に生成した名前を使用します。
    例:「in1 in2」「out1 out2」
  • [入出力処理形式][SOAPボディのパラメータを受け渡す]を選択した場合、有効になります。
  • スクリプト変数名はXMLの要素名として使用可能な形式にしてください。
    Webサービストリガーへのリクエスト用SOAPメッセージの要素として使用されるため、SOAPメッセージの構築ができなくなります。
    使用できないスクリプト変数名の一例は以下の通りです。
    • 半角数値で始まる
    • 「"」を含む
    • 半角スペースを含む
    要素名として使用可能な文字のXML仕様については、「W3C XML 1.0仕様」(http://www.w3.org/TR/xml/#NT-Name)の「[5] Name」を参照してください。
WSDL定義 WSDLを入力します。
  • [入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、有効になります。
  • ルート要素名が「definitions」もしくは「<名前空間>:definitions」である必要があります。
  • portType要素の子要素のoperation要素からオペレーション名を取得します。
  • オペレーションを複数設定することはできません。
  • [実行パス]に入力したパスから生成されるトリガー実行URLと、[WSDL定義]に設定したWSDLのaddress要素のlocation属性の値が一致する必要があります。
実行内容の設定
項目名 内容 備考
トリガー所有者 作成するトリガーの所有者を選択します。
  • 管理者権限を持ったユーザのみ選択できます。
    (一般ユーザは自分以外を選択することはできません。)
実行ユーザ名 [スクリプト]で指定したスクリプトを実行するユーザを選択します。  
パスワード [実行ユーザ名]で指定したユーザに対応したパスワードを入力します。  
サービス トリガーで実行するスクリプトを含むサービスを選択します。
  • サービスとして登録されたプロジェクトが表示されます。
スクリプト トリガーで実行するスクリプトを選択します。
  • [サービス]で指定したサービス内のスクリプトが表示されます。
スクリプト引数 [スクリプト]で指定したスクリプトに設定されているスクリプト入力変数が表示されます。
  • スクリプト出力変数は表示されません。
  • [入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、実行スクリプトにXML型のスクリプト入力変数が設定されている必要があります。
  • スクリプトにスクリプト入力変数を設定し、使用する方法については、「入出力変数について」を参照してください。
スクリプト引数/変数名 スクリプト変数名が表示されます。
  • 編集はできません。
スクリプト引数/型 スクリプト変数の型が表示されます。
  • 編集はできません。
スクリプト引数/値 スクリプト変数の値を入力します。
  • [高度な操作]ウィンドウからトリガー変数を指定できます。
  • トリガー変数以外の値を指定した場合、無視されます。
  • [入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、XML型のスクリプト入力変数にトリガー変数「trigger.soapRequest」を指定する必要があります。
スクリプト出力 [スクリプト]で指定したスクリプトに設定されているスクリプト出力変数が表示されます。
  • スクリプト入力変数は表示されません。
  • [入出力処理形式][SOAPボディのパラメータを受け渡す]を選択した場合、XML型のスクリプト出力変数はSOAPレスポンスのパラメータ内にXMLを埋め込んだ形で返します。

    例:XML型のスクリプト出力変数「var」の場合
    <?xml version="1.0" encoding="Shift_JIS"?>
    <OperationName>
      <var>
      &lt;?xml version="1.0" encoding="UTF-8"?&gt;
      &lt;table&gt;
        &lt;row&gt;
          &lt;column&gt;1&lt;/column&gt;
        &lt;/row&gt;
      &lt;/table&gt;
      </var>
    </OperationName>
  • [入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、実行スクリプトにXML型のスクリプト出力変数が設定されている必要があります。
  • スクリプトにスクリプト出力変数を設定し、使用する方法については、「入出力変数について」を参照してください。
スクリプト出力/変数名 スクリプト変数名が表示されます。
  • 編集はできません。
スクリプト出力/型 スクリプト変数の型が表示されます。
  • 編集はできません。
スクリプト出力/値 スクリプト変数の値を入力します。
  • [高度な操作]ウィンドウからトリガー変数を指定できます。
  • トリガー変数以外の値を指定した場合、無視されます。
  • [入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、XML型のスクリプト出力変数にトリガー変数「trigger.soapResponse」を指定する必要があります。
実行オプションの設定
実行オプションの設定については、「実行オプションの設定」を参照してください。

トリガー変数

[入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、XML型のスクリプト入出力変数を使用してSOAPエンベロープの受け渡しを行います。

トリガー変数名 内容 備考
SOAPリクエスト trigger.soapRequest [入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、この変数内にWebサービスクライアントからのSOAPリクエストが格納されます。
  • [スクリプト引数/値]に指定する必要があります。
  • 指定例:${trigger.soapRequest}
SOAPレスポンス trigger.soapResponse [入出力処理形式][SOAPエンベロープを受け渡す]を選択した場合、この変数内のXMLデータをWebサービスクライアントに返します。
この変数内のXMLデータは[WSDL定義]に入力したWSDLに基づいたSOAPレスポンスである必要があります。
  • [スクリプト出力/値]に指定する必要があります。
  • 指定例:${trigger.soapResponse}

ログ出力について

トリガー実行のURLにリクエストを受信した際、トリガーが有効状態であればリクエストを送信したクライアント、または最後のプロキシサーバのIPアドレスをサーバログに出力します。
ログへの出力は、サーバログのログレベルを「FINFO」以下に設定している場合に行います。

仕様制限

主な例外

ありません。

注意事項