---
sourceDocument: Xanadu API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Scripted SOAP Web Services

# Scripted SOAP Web Services {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：3分

Scripted SOAP Web Services により、ServiceNow 管理者はカスタム受信 SOAP Web Services を作成できます。

SOAP Web Service の入力パラメーターと出力パラメーターを定義し、JavaScript を使用して操作を実行できます。この機能は非常に強力ですが、可能な場合は、実装と管理が簡単な[ダイレクト Web サービス](https://servicenow-prod.fluidtopics.net/18p1hvk7s1aDa__8fEDlXA "適切なアクセス制御リストが設定されている場合は、システム内の任意のテーブルでダイレクト Web サービスを使用できます。")または [SOAP Web サービスインポートセット](https://servicenow-prod.fluidtopics.net/E1ErgtM7F_FiNHGOBOhILw "Web サービスインポートセットは、インポートセットテーブルに Web サービスインターフェイスを提供して、ダイレクト Web サービスおよび Scripted SOAP Web Services を補完します。")を使用してください。

## セキュリティ

Scripted SOAP Web Services にはすべての SOAP Web Services と同じ基底セキュリティオプションがあります。SOAP Web Services のセキュリティの詳細については、「[SOAP Web サービスのセキュリティ](https://servicenow-prod.fluidtopics.net/idzkKOkCs_8FmgZ7aZEUxQ#c_SOAPWebService__SOAP-web-services-security)」を参照してください。

システムに[厳格なセキュリティ](https://servicenow-prod.fluidtopics.net/idzkKOkCs_8FmgZ7aZEUxQ "Simple Object Access Protocol (SOAP) は、HTTP 経由で Web サービスにアクセスするための XML ベースのプロトコルです。")が適用されている場合、HTTP 認証されたユーザーがスクリプト化された Web サービスを実行するには [soap_script](https://servicenow-prod.fluidtopics.net/idzkKOkCs_8FmgZ7aZEUxQ "Simple Object Access Protocol (SOAP) は、HTTP 経由で Web サービスにアクセスするための XML ベースのプロトコルです。") ロールが必要です。

## WSDL {#c_ScriptedWebServices__section_px4_kjf_f3b}

すべての ServiceNow テーブルとインポートセットは、そのテーブルスキーマと利用可能な操作を記述する Web サービス定義言語 (WSDL) XML ドキュメントを動的に生成します。

## WSDL 準拠の適用 {#c_ScriptedWebServices__section_ay4_vff_f3b}

WSDL で定義されているのと同じ順序で応答の出力値をリストできます。

Scripted SOAP Web Service を作成すると、入力パラメーターと出力パラメーターの関連リストに基づいて WSDL が生成されます。スクリプト化されたサービスによって送信される実際の SOAP 応答は、\[スクリプト\] によって決定されます。この動作により、WSDL で定義されているものとは異なる順序でスクリプトから出力値が返される可能性があります。  
関連リストで定義された出力パラメーターの順序を強制するには、\[WSDL コンプライアンス\] チェックボックスをオンにします。このチェックボックスをオンにすると、Web サービスは WSDL の順序と一致するようにスクリプトによって返されるパラメーターを並べ替えます。  
注:  
追加の応答パラメーターがスクリプトによって返されても、応答パラメーターの関連リストで定義されていない場合、それらのパラメーターは \[WSDL コンプライアンス\] の選択時に応答から除外されます。  
{#c_ScriptedWebServices__table_ump_jgf_f3b__entry__2}

| パラメーター | 順番 |
|-|-|
| Param 1 | 200 |
| Param 2 | 300 |
| Param 3 | 100 |
[表 : 1. 出力パラメーターの関連リスト]

{#c_ScriptedWebServices__table_ump_jgf_f3b}

定義された出力パラメーターの値を設定するスクリプトは次のとおりです。このスクリプト例では、パラメーターは出力パラメーターの関連リストで定義されている順序とは異なることに注意してください。関連リストで定義されていない追加のパラメーター param4 にも注意してください。

    Response.param1 = 1;
    Response.param4 = 4;
    Response.param3 = 3;

\[WSDL コンプライアンス\] チェックボックスが \[false\] の場合、スクリプトによって生成される SOAP 応答は次のようになります。

    <response>
                    <param1>1</param1>
                    <param4>4</param1>
                    <param3>3</param1>
    </response>

\[WSDL コンプライアンス\] チェックボックスが \[true\] の場合、スクリプトによって生成される SOAP 応答は次のようになります。

    <response>
                    <param3>3</param1>
                    <param1>1</param1>
    </response>

## スタティック WSDL {#c_ScriptedWebServices__section_yfd_p2f_f3b}

一部の Web サービスクライアントでは、特定の WSDL 形式を使用したインスタンスへの SOAP アクセスが必要です。この必須形式は、標準の ServiceNow WSDL 形式とは異なる場合があります。この場合、必須形式に一致するスタティック WSDL を作成できます。

## グローバル変数

受信 SOAP 要求のカスタム処理を容易にするために、スクリプトコンテキストで次のグローバル変数を使用できます。

* soapRequestDocument：受信 SOAP エンベロープを表す Java org.w3c.dom.Document オブジェクト。
* soapRequestXML：受信 SOAP エンベロープ XML を表す文字列オブジェクト。
* request：受信 SOAP エンベロープのマッピングされた値 (入力パラメーター名にマッピング) を含む Javascript オブジェクト。
* response：応答値をカスタマイズできる Javascript オブジェクト。「[応答のカスタマイズ](https://servicenow-prod.fluidtopics.net/cW8zBIdgERYa3BReDvkTZQ "この例に従って、SOAP 応答の XML ペイロードをカスタマイズおよび制御します。")」を参照してください。
{#c_ScriptedWebServices__ul_qxr_xw2_f3b}
* **[新しい Scripted SOAP Web Service の作成](https://servicenow-prod.fluidtopics.net/E3bcSs8z9_yn7MOXdPU~vA)**   
  新しい Scripted SOAP Web Service を作成するには、次の例に従ってください。
* **[応答のカスタマイズ](https://servicenow-prod.fluidtopics.net/cW8zBIdgERYa3BReDvkTZQ)**   
  この例に従って、SOAP 応答の XML ペイロードをカスタマイズおよび制御します。
* **[スタティック WSDL を使用した Scripted SOAP Web Service の作成](https://servicenow-prod.fluidtopics.net/jyVSrdf3FnzNfIfdrKu~uw)**   
  スタティック WSDL を使用して Scripted SOAP Web Service を作成するには、次の例に従ってください。

