前のページ|次のページ

SOAPWIPSERVICE関数

WSセキュリティ認証を使用して、SAS (R) Webサービスを呼び出します。認証情報は引数で指定します。

カテゴリ: Webサービス
注: この関数はSAS環境ファイルを使用します。

構文

SOAPWIPSERVICE (IN, SERVICE <, option (複数可)>)

必須引数

IN

ファイル参照名の文字値を指定します。INは、SOAP要求を含むXMLデータを入力するために使用されます。

SERVICE

サービスレジストリに格納されているとおりに、エンドポイントサービスのサービス名を指定します。

オプション引数

option

SOAPWIPSERVICE関数で使用可能なオプションを指定します。次のオプションを使用できます。

OUT

SOAP応答の出力XMLが書き込まれるファイル参照名の文字値を指定します。

SOAPACTION

Webサービスで呼び出すSOAPAction要素の文字値を指定します。

WSSUSERNAME

WSセキュリティのユーザー名である文字値を指定します。

WSSPASSWORD

WSセキュリティのパスワード(WSSUSERNAMEのパスワード)である文字値を指定します。PROC PWENCODEによって生成されるエンコーディングがサポートされます。

ENVFILE

SAS環境ファイルの場所である文字値を指定します。

ENVIRONMENT

使用するSAS環境ファイルで定義されている環境の文字値を指定します。

MUSTUNDERSTAND

SOAPヘッダーのmustUnderstand属性設定の数値を指定します。

CONFIGFILE

主にタイムアウト値を設定するSpring構成ファイルの文字値を指定します。

DEBUG

ログ出力のデバッグに使用するファイルのフルパスの文字値を指定します。

詳細

SAS環境ファイル

サービス名はサービスレジストリに指定されます。SAS環境ファイルはサービスレジストリと目的のサービスだけでなく、指定の認証情報を使ってセキュリティトークンを生成するセキュリティトークンサービスの場所を検索するのに使用されます。

次の例では、DATAステップでSOAPWIPSERVICE関数を使用する方法を示します。
FILENAME request 'c:\temp\Request.xml';
FILENAME response 'c:\temp\Response.xml';

data _null;
    service="ReportRepositoryService";
    soapaction="http://www.test.com/xml/schema/test-svcs/reportrepository-9.3/
               DirectoryServiceInterface/isDirectory";
    envfile="http://somemachine.abc.xyz.com/schemas/test-environment.xml";
    environment="test";
    wssusername="user-name";
    wsspassword="password";
    
    rc=soapwipservice("REQUEST", service, "RESPONSE", soapaction, wssusername, 
                       wsspassword, envfile, environment);
run;

 
このセクションではSOAP要求について説明します。
Request.xml:
<soapenv:Envelope xmlns:rep="http://www.test.com/xml/schema/test-svcs/
                        reportrepository-9.3" 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header>
      <Action xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://
                     www.test.com/xml/schema/test-svcs/reportrepository-9.3/
                     DirectoryServiceInterface/isDirectory</Action>
   </soapenv:Header>
   <soapenv:Body>
      <rep:isDirectoryDirectoryServiceInterfaceRequest>
         <rep:dirPathUrl>SBIP://Foundation/Users/someuser/My Folder
                                </rep:dirPathUrl>
      </rep:isDirectoryDirectoryServiceInterfaceRequest>
   </soapenv:Body>
</soapenv:Envelope>

test-environments.xml:

<environments xmlns="http://www.test.com/xml/schema/test-environments-9.3
  
   xsi:schemaLocation="http://www.test.com/xml/schema/test-environments-9.3
      http://www.test.com/xml/schema/test-environments-9.3/
             test-environments-9.3.xsd">

<environment name="default" default="true">
   <desc>Default Test Environment</desc>
   <service-registry>http://machine1.abc.xyz.com:8080/TESTWIPServices/remote/
                            serviceRegistry
   </service-registry>
</environment>

<environment name="test" default="false">
   <desc>Environment for PROC SOAP testing</desc>
   <service-registry>http://machine2.abc.xyz.com:8080/TESTWIPSoapServices/
                            Service Registry/serviceRegistry
   </service-registry>
</environment>

</environments>

関連項目:

前のページ|次のページ|ページの先頭へ