Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

ターミナルを使用したプロキシ・クラスの作成とテスト

Web サービス・クライアント・ウィザードを使用するほかに、ターミナルと %SOAP.WSDL.ReaderOpens in a new tab クラスを使用してプロキシ・クラスを作成することもできます。

  1. ターミナルを開きます。使用するネームスペースはどれでもかまいません。サンプルをより現実的なものとするために、サービス・コードを含むネームスペースと異なるネームスペースを使用できます。

  2. Web サービス・プロデューサの WSDL ドキュメントの URL を変数に割り当てます。

    
    SAMPLES> Set wsdl="http://localhost:57772/csp/user/SOAPTutorial.SOAPService
    .cls?WSDL=1"
    
    

    この例では、Caché Web サーバ・ポートは規定値の 57772 です。ユーザのシステム上のポートはこれとは異なる場合があります。ご使用のシステムのポートを特定するには、管理ポータルの [概要] リンクをクリックします。

  3. %SOAP.WSDL.ReaderOpens in a new tab のインスタンスを作成し、その Process メソッドを使用して Web サービスのプロキシ・クラスを生成します。Process の 2 番目の引数で、生成されるクラスのパッケージ名を制御します。

    
    SAMPLES> Set reader=##class(%SOAP.WSDL.Reader).%New()
    SAMPLES> Do reader.Process(wsdl,"ContactApplication")
    
    

    以下は、ターミナル・セッションの画面です。

    generated description: soapclientterminal 20131

  4. プロキシ・クラス ContactApplicaiton.SOAPServiceSoap のインスタンスを作成してテストします。

    
    SAMPLES> Set service = ##class(ContactApplication.SOAPServiceSoap).%New()
    SAMPLES> Set contact = service.GetContact(1)
    SAMPLES> Write contact.Name
    Vanzetti,Dmitry W.
    SAMPLES> Write contact.ContactType
    Personal
    
    
Note:

Web サービスが含まれる CSP アプリケーションがパスワードで保護されている場合、プロキシ・クラスを生成する前に、有効な Caché ユーザ名とパスワードを WSDL URL に追加する必要があります。これは、&CacheUserName=<user name>&CachePassword=<password> を WSDL URL に追加することで実行できます。

また、Web サービスを実行するときに、ユーザ名とパスワードを送信するための SOAP ヘッダを作成する必要があります。この作成方法の詳細は、"Caché Web サービスの保護" の "ユーザ名トークンの追加" を参照してください。

FeedbackOpens in a new tab