新しい Scripted SOAP Web Service の作成
新しい Scripted SOAP Web Service を作成するには、次の例に従ってください。
Web Services Provider - Scripted プラグインを有効にすると、System Web Services アプリケーションで新しいモジュール [スクリプト利用 Web サービス] を使用できます。
例 1:システムプロパティの取得
最初のステップは、受信パラメーターと戻りパラメーターを定義することです。これを行うには、[入力パラメーター] と [出力パラメーター] にエントリを追加します。これらのパラメーターは意味のある WSDL を構築して表示するために使用され、実際の Web サービス自体を処理する機能を追加するものではありません。
パラメーターは Web サービスのスクリプトで参照されます。入力パラメーターは次の構文を使用して取得されます。
var a= request.property;出力パラメーターは次の構文を使用して設定されます。
response.property="ABC";次の例は、システムプロパティを取得し、SOAP 応答の一部として返す方法を示しています。この例は、カスタムのスクリプト利用 Web サービスを作成して、ベース ServiceNow システムのダイレクト Web サービスでは実行できない処理を行う方法を示します。
例 2:Blackberry の注文
ダイレクト Web サービスは、テーブルとそのデータを操作します。次の例は、スクリプト利用 Web サービスを呼び出すことによって、Blackberry の注文などのビジネスソリューションを開始する方法を示しています。次の入力パラメーターと出力パラメーターは、 Blackberry の例をサポートしています。
このスクリプトは、上記のパラメーターを使用して Blackberry を Service Catalog のカートに追加して注文する方法を示しています。要求番号は、SOAP 応答の [request_number] フィールドで返されます。
var cart = new Cart();
var item = cart.addItem('e2132865c0a8016500108d9cee411699');
cart.setVariable(item,'original', request.phone_number);
// set the requested for
var gr = new GlideRecord("sys_user");
gr.addQuery("user_name", request.requested_for);
gr.query();
if(gr.next()){
var cartGR = cart.getCart();
cartGR.requested_for = gr.getUniqueValue();
cartGR.update();
}
var rc = cart.placeOrder();
response.request_number= rc.getValue('number');