Windows XP における SOAP クライアント概要
Roger Wolter
Microsoft Corporation
May 2001
要約 : この記事では、Microsoft Windows XP Professional に含まれている SOAP クライアント ソフトウェア上で SOAP を使って Web サービスにアクセスする方法の基本事項を解説します。まず SOAP および WSDL 標準を簡単に紹介し、SOAP 対応の Web サービスと通信を行えるクライアントを実装する方法を説明します。
目次
はじめに
SOAP とは?
WSDL とは?
単純なクライアント アプリケーションの構築
次のステップ
SOAPClient オブジェクト
Mssoapinit メソッド
ClientProperty プロパティ
ConnectorProperty プロパティ
Detail プロパティ
HeaderHandler (SOAPClient)
Faultactor プロパティ (SOAPClient)
Faultcode プロパティ (SOAPClient)
Faultstring プロパティ (SOAPClient)
はじめに
Microsoft(R) Windows(R) XP Professional には、Microsoft SOAP Toolkit 2.0 のクライアント部分が含まれているため、SOAP クライアント アプリケーションを構築したり、SOAP Toolkit 2.0 のクライアント部分なしで SOAP クライアントを Windows XP Professional クライアントに配布することが可能になっています。この記事では、Windows XP に含まれている SOAP クライアント ソフトウェア上で SOAP を使って Web サービスにアクセスする方法の基本事項を解説します。まず SOAP および Web Services Description Language (WSDL) 標準を簡単に紹介し、SOAP 対応の Web サービスと通信を行えるクライアントを実装する方法を説明します。
SOAP とは?
Simple Object Access Protocol の頭字語である SOAP は、http://www.w3.org/TR/SOAP に掲載されている SOAP 標準によって定義されています。SOAP プロトコルは、システム間での通信に使用される標準 XML メッセージの形式を定義しています。メッセージ形式は XML 標準をベースにして標準化されているため、SOAP は異なるコンピュータ アーキテクチャ、言語、およびオペレーティング システムの間での通信に利用することができます。SOAP は、サービスを標準的な方法で公開する、Web サービスと呼ばれる新しい種類のアプリケーションを可能にします。アプリケーション開発者は、Web 上のさまざまなソースのサービスを組み合わせて、新しいアプリケーションを作成することができます。
SOAP 仕様が扱っている分野は主に 4 つあります。SOAP メッセージの XML コンテンツを囲むエンベロープの形式を定義する必須の SOAP エンベロープ形式、SOAP メッセージ内で言語タイプがどのように XML にマッピングされるかを定義するオプションのエンコーディング規則のセット (これは仕様のセクション 5 に定義されているので、「セクション 5 エンコーディング」と呼ばれます)、SOAP メッセージで関数呼び出しがどのように表現されるかを定義するオプションの RPC 形式、および SOAP メッセージを HTTP を通して交換する方法を定義した HTTP バインディングです。HTTP は、この標準が定義している唯一の通信プロトコル バインディングです。このため、ほとんどすべての SOAP 実装が HTTP バインディングを含んでいます。SOAP は、SOAP メッセージのトランスポートに使用できるその他の通信プロトコルについては、何の制限も設けていないことに注意してください。
次に単純な SOAP メッセージを示します。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="https://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="https://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAPSDK1:Add xmlns:SOAPSDK1="http://tempuri.org/message/">
<a>333</a>
<b>888</b>
</SOAPSDK1:Add>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
この例をもとに、SOAP メッセージの形式を詳しく説明していきましょう。最初の行は、SOAP ドキュメントで使用される文字セットを定義する XML 宣言です。Envelope 要素は、つねに SOAP メッセージのルートであり、つねに "https://schemas.xmlsoap.org/soap/envelope/" 名前空間に含まれている必須の要素です。
SOAP-ENV:encodingStyle="https://schemas.xmlsoap.org/soap/encoding/" 属性は、メッセージで使用されるエンコーディング スタイルを定義します。この例では、標準のセクション 5 エンコーディングが使用されています。Envelope 要素の Body サブ要素は SOAP メッセージを含んでいます。SOAP 仕様のセクション 7 で定義されているように、Add 要素は Add という名前の操作の呼び出しを表します。Add のサブ要素は、Add メソッド呼び出しのパラメータです。
このメッセージへの応答は、次のようなものになります。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="https://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="https://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAPSDK1:AddResponse
xmlns:SOAPSDK1="http://tempuri.org/message/">
<Result>1221</Result>
</SOAPSDK1:AddResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
WSDL とは?
WSDL は Web Service Definition Language の頭字語です。Web サービスの呼び出しに成功するためには、そのサービスにアクセスする方法、サービスがサポートしている操作、サービスが期待しているパラメータ、およびサービスが返す応答を知っている必要があります。WSDL は、これらすべての情報を、人間が読んだりマシンで処理することが可能な XML ドキュメントの形で提供します。
WSDL ファイルの形式を、次の WSDL ファイルを例にとって説明しましょう。
<?xml version="1.0" encoding="UTF-8" ?>
<definitions name="net.xmethods.services.currencyexchange.CurrencyExchange"
targetNamespace="http://www.themindelectric.com/wsdl/
net.xmethods.services.currencyexchange.CurrencyExchange/"
xmlns:tns="http://www.themindelectric.com/wsdl/
net.xmethods.services.currencyexchange.CurrencyExchange/"
xmlns:electric="http://www.themindelectric.com/"
xmlns:soap="https://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="https://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl="https://schemas.xmlsoap.org/wsdl/"
xmlns="https://schemas.xmlsoap.org/wsdl/">
<message name="getRateRequest1">
<part name="country1" type="xsd:string" />
<part name="country2" type="xsd:string" />
</message>
<message name="getRateResponse1">
<part name="Result" type="xsd:float" />
</message>
<portType name="net.xmethods.services.
currencyexchange.CurrencyExchangePortType">
<operation name="getRate" parameterOrder="country1 country2">
<input message="tns:getRateRequest1" />
<output message="tns:getRateResponse1" />
</operation>
</portType>
<binding name="net.xmethods.services.currencyexchange.CurrencyExchangeBinding"
type="tns:net.xmethods.services.currencyexchange.CurrencyExchangePortType">
<soap:binding style="rpc"
transport="https://schemas.xmlsoap.org/soap/http" />
<operation name="getRate">
<soap:operation soapAction="urn:xmethods-CurrencyExchange#getRate" />
<input>
<soap:body use="encoded" namespace="urn:xmethods-CurrencyExchange"
encodingStyle="https://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output>
<soap:body use="encoded" namespace="urn:xmethods-CurrencyExchange"
encodingStyle="https://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
</binding>
<service name="net.xmethods.services.currencyexchange.CurrencyExchangeService">
<documentation>
net.xmethods.services.currencyexchange.CurrencyExchange web service
</documentation>
<port name="net.xmethods.services.currencyexchange.CurrencyExchangePort"
binding="tns:net.xmethods.services.currencyexchange.
CurrencyExchangeBinding">
<soap:address location="http://206.135.115.109:9090/soap" />
</port>
</service>
</definitions>
これは、The Mind Electric の Glue で実装されている為替レート サービスのための WSDL ファイルです。このため、この形式は Microsoft SOAP Toolkit の WSDL ファイルと同一のものではありませんが、互換性はあります。WSDL ファイルの最初の要素は定義要素です。これはファイルのルート要素であり、通常は複数の名前空間宣言を含んでいます。
<definitions
name="net.xmethods.services.currencyexchange.CurrencyExchange"
targetNamespace="http://www.themindelectric.com/wsdl/
net.xmethods.services.currencyexchange.CurrencyExchange/"
xmlns:tns="http://www.themindelectric.com/wsdl/
net.xmethods.services.currencyexchange.CurrencyExchange/"
xmlns:electric="http://www.themindelectric.com/"
xmlns:soap="https://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="https://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl="https://schemas.xmlsoap.org/wsdl/"
xmlns="https://schemas.xmlsoap.org/wsdl/">
</definitions>
xsd 名前空間は 2001 バージョンであることに注意してください。SOAP Toolkit は、デフォルトでは XSD スキーマ名前空間の 2001 Recommendation バージョンを使用しますが、それよりも古い名前空間バージョンで書かれた WSDL ファイルを理解することができます。
WSDL が何らかの複合型を使用している場合、これらの型の XSD スキーマ定義は <types></types> 要素に含まれることになります。この WSDL ファイルは複合型を使用していないので、この要素は存在しません。
次のセクションは、この WSDL で定義されているサービスが使用するメッセージを定義しています。
<message name="getRateRequest1">
<part name="country1" type="xsd:string" />
<part name="country2" type="xsd:string" />
</message>
<message name="getRateResponse1">
<part name="Result" type="xsd:float" />
</message>
ここでは、メソッド パラメータの名前とデータ型が定義されています。
portType 要素は、前のセクションで定義されたメッセージと、それらを使用する操作の間のマッピングを定義します。
<portType name="net.xmethods.services.currencyexchange.CurrencyExchangePortType">
<operation name="getRate" parameterOrder="country1 country2">
<input message="tns:getRateRequest1" />
<output message="tns:getRateResponse1" />
</operation>
</portType>
binding 要素は、portType 要素で定義された抽象的操作と、それらの SOAP での実装方法の間のバインディングを定義します。WSDL は他の SOAP プロトコルも定義できるように作られているので、これは別の要素の中で行われます。注意しなくてはならないことをいくつか記しておくと、style="rpc" は、このメッセージが SOAP 標準のセクション 7 で定義された rpc 規則を使用することを意味しています。style="document" が指定されていれば、SOAP メッセージの内容は XML ドキュメントになります。transport 属性は SOAP メッセージが SOAP HTTP メッセージとして送信されることを示し、soapAction 属性は HTTP パケットの中の soapAction ヘッダーの内容を定義し、use="encoded" 属性はパラメータ値に SOAP セクション 5 エンコーディングが使用されることを示します。
<binding name=
"net.xmethods.services.currencyexchange.CurrencyExchangeBinding"
type="tns:net.xmethods.services.currencyexchange.CurrencyExchangePortType">
<soap:binding style=
"rpc" transport="https://schemas.xmlsoap.org/soap/http" />
<operation name="getRate">
<soap:operation soapAction="urn:xmethods-CurrencyExchange#getRate" />
<input>
<soap:body use="encoded" namespace="urn:xmethods-CurrencyExchange"
encodingStyle="https://schemas.xmlsoap.org/soap/encoding/" />
</input>
<output>
<soap:body use="encoded" namespace="urn:xmethods-CurrencyExchange"
encodingStyle="https://schemas.xmlsoap.org/soap/encoding/" />
</output>
</operation>
</binding>
service 要素は、SOAP バインディングを、サービスの物理的実装に結び付けます。サービスの URL は、この要素で定義されます。このサービスはポート 9090 でアクセスされることに注意してください。SOAP はポート 80 を通ることはできません (ファイヤウォールがポート 80 を使用することを要求している場合には、ポート 80 でもサービスのコピーが実行されます)。
<service
name="net.xmethods.services.currencyexchange.CurrencyExchangeService">
<documentation>
net.xmethods.services.currencyexchange.CurrencyExchange web service
</documentation>
<port name="net.xmethods.services.currencyexchange.CurrencyExchangePort"
binding="tns:net.xmethods.services.
currencyexchange.CurrencyExchangeBinding">
<soap:address location="http://206.135.115.109:9090/soap" />
</port>
</service>
単純なクライアント アプリケーションの構築
このセクションでは、Windows XP に含まれている SOAP クライアントを使って、単純な SOAP アプリケーションを構築するプロセスのウォークスルーを行います。ここの例で使用される Web サービスは、利用可能な SOAP サービスのオンライン リストである XMethods サイトに置かれている為替レート サービスです。
このサービスは、パラメータとして 2 つの国を受け取り、それらの間の為替レートを返します。このサービスを記述する WSDL ファイルは http://www.xmethods.net/ にあります。
この SOAP メソッドを高水準の SOAP API を使って呼び出すためのステップは、SOAPClient オブジェクトを作成し、WSDL ファイルを使って SOAPClient オブジェクトを初期化し、メソッドを呼び出すというものです。
次に、これを行う単純な VBScript コードを示します。
dim SOAPClient
set SOAPClient = createobject("MSSOAP.SOAPClient")
on error resume next
SOAPClient.mssoapinit("http://www.xmethods.net/sd/
CurrencyExchangeService.wsdl")
if err then
wscript.echo SOAPClient.faultString
wscript.echo SOAPClient.detail
end if
wscript.echo SOAPClient.getRate("England","Japan")
if err then
wscript.echo SOAPClient.faultString
wscript.echo SOAPClient.detail
end if
3 つの太字の行は、上に述べた 3 つのステップに対応しています。mssoapinit のパラメータは WSDL ファイル指定で、WSDL ファイルがリモート システム上に置かれている場合は URL、WSDL ファイルがローカル マシン上に存在する場合にはファイル パスを使用することができます。ローカルな WSDL ファイルは、ファイルの取得にネットワーク ラウンドトリップが不要なので、より効率的です。ただし、すべてのクライアントで単一の WSDL ファイルをロードするようにした方が、管理作業は簡単になります。
この SOAP メソッドを実行するには、"currency.vbs" という名前のファイルにコードを入力し、"cscript currency.vbs" を入力して実行します。結果は次のようになります。
C:\SOAPDemo>cscript currency.vbs
Microsoft (R) Windows Script Host Version 5.1 for Windows
Copyright (C) Microsoft Corporation 1996-1999. All rights reserved.
173.9434
これは VB、C++、またはその他の任意の COM 対応の言語に簡単に適用することができます。次に、同じサービスを VB で実装した例を示します。
Private Sub Form_Load()
Dim SOAPClient As SOAPClient
Set SOAPClient = New SOAPClient
On Error GoTo SOAPError
SOAPClient.mssoapinit _
("http://services.xmethods.net/soap/urn:xmethods-CurrencyExchange.wsdl")
MsgBox Str(SOAPClient.getRate("England", "Japan")), _
vbOKOnly, "Exchange Rate"
Exit Sub
SOAPError:
MsgBox SOAPClient.faultstring + vbCrLf + SOAPClient.detail, vbOKOnly,_
"SOAP Error"
End Sub
注: Windows XP に含まれているバージョンの SOAPClient は、ASP アプリケーションの実行に使用することはできません。このためには、SOAP Toolkit 2.0 のフル リリースをダウンロードする必要があります。
次のステップ
これで Windows XP の SOAP を使って Web サービス クライアント アプリケーションを構築する方法がわかったので、SOAP に関する知識を拡大し、独自の Web サービスを構築してみることができます。このための情報源としては、 https://msdn.microsoft.com/soap/ と https://msdn.microsoft.com/webservices/ が優れています。これらのサイトには、SOAP 関連の情報、ホワイト ペーパー、他の SOAP 関連サイト、および独自の Web サービス アプリケーションの構築に着手するための完全な SOAP Toolkit 2.0 をダウンロードできるダウンロード ページへのリンクがあります。フル リリースをインストールするときには、システム ファイルの保護のせいで現在のファイルを上書きできないという警告が表示されます。これらのエラーは無視してかまいません。また、XMethods にある他のサービスを試してみることもできます。SOAP Toolkit が動作するためには、サービスが WSDL ファイルを提供しなくてはならないということを忘れないようにしてください。
SOAPClient オブジェクト
このセクションでは、SOAPClient オブジェクトが公開するオブジェクト モデルについて説明します。SOAPClient オブジェクトが公開している個々のメソッドとプロパティについての説明があります。詳細については、https://msdn.microsoft.com/soap/ を参照してください。
Mssoapinit メソッド
mssoapinit メソッドは、Web Services Description Language (WSDL) ファイルを入力として使って、SOAPClient オブジェクトを初期化します。識別されたサービスの中のすべての操作が、初期化の際に SOAPClient オブジェクトにバインドされます。これにより、サービス内に定義されている操作を、SOAPClient オブジェクトを使って呼び出せるようになります。
メソッド定義
HRESULT mssoapinit(
[in] BSTR bstrWSDLFile,
[in, optional, defaultvalue("")] BSTR bstrServiceName,
[in, optional, defaultvalue("")] BSTR bstrPort,
[in, optional, defaultvalue("")] BSTR bstrWSMLFile);
パラメータ
bstrWSDLFile
bstrWSDLFile は、サーバーが提供するサービスを記述している WSDL ファイルの URL です。
bstrServiceName
bstrServiceName は、Simple Object Access Protocol (SOAP) 要求で指定された操作を含んでいる WSDL ファイル内のオプションのサービスです。このパラメータが指定されていないか、null または空の文字列である場合、mssoapinit メソッドは、SOAPClient オブジェクトの初期化の際に、指定された WSDL ファイルの中の最初のサービスを使用します。
bstrPort
やはりオプションの bstrPort パラメータは、SOAP 要求で指定された操作を含んでいる WSDL ファイル内のポートの名前です。このパラメータが指定されていないか、null または空の文字列である場合、mssoapinit メソッドは、SOAPClient オブジェクトの初期化の際に、指定されたサービス内の最初のポートを使用します。
やはりオプションの bstrWSMLFile パラメータは、Web Services Meta Language (WSML) ファイルの URL です。これは、カスタム タイプ マッパを使用するときにのみ必須のパラメータとなります。
Visual Basic の構文
Sub mssoapinit(bstrWSDLFile As String,_
[bstrServiceName As String],_
[bstrPort As String],_
[bstrWSMLFile As String])
Visual Basic の例
set soapclient = CreateObject("MSSOAP.SOAPClient")
call soapclient.mssoapinit("DocSample1.wsdl", "", "", "")
wscript.echo soapclient.AddNumbers(2,3)
wscript.echo soapclient.SubtractNumbers(3,2)
注釈
mssoapinit メソッドは、クライアント サイドの高レベル API の一部です。このメソッドを使用するためには、まずクライアント上に SOAPClient オブジェクトを作成する必要があります。その後、WSDL ファイル名、サービス名、およびポート名をパラメータとして使用して、mssoapinit メソッドを呼び出します。これで、クライアントは要求したサービスまたはポートで、WSDL ファイルに定義されている任意の操作を呼び出すことができます。
ClientProperty プロパティ
ClientProperty プロパティは、SOAPClient オブジェクトに固有のプロパティの設定と取得を行います。
メソッド定義
[propget] HRESULT ClientProperty(
[in] BSTR PropertyName,
[out, retval] VARIANT* pPropertyValue);
[propput] HRESULT ClientProperty(
[in] BSTR PropertyName,
[in] VARIANT pPropertyValue);
パラメータ
PropertyName は設定または取得するプロパティの名前です。プロパティのリストについては、次の注釈のセクションを参照してください。以下のプロパティがサポートされています (プロパティ名では大文字小文字が区別されます)。
プロパティ名 | 説明 |
---|---|
ServerHTTPRequest | Web Services Description Language (WSDL) および Web Services Meta Language (WSML) ファイルのロードに "server-safe" XML コンポーネントを使用するかどうかを示す True/False の値。Active Server Pages (ASP) アプリケーションまたは ISAPI DLL が SOAPClient オブジェクトを使用する場合には True に設定します。
ServerHTTPRequest が true に設定されている場合には、WinHTTP Proxy Configuration Utility を使って WinHTTP を構成する必要があります。これは、プロキシ サーバーを使用しない場合でも必要です。このユーティリティは、https://msdn2.microsoft.com/en-us/downloads/default.aspx からダウンロードし、ダウンロードに含まれている ReadMe.txt ファイルの説明に従って使用します。 |
ConnectorProgID | ISOAPConnector インターフェイスを実装するクラスの ProgID を指定します。サービスに要求を送信するときには、このクラスのオブジェクトを作成し、使用することになります。これがデフォルト値である空の文字列に設定された場合、SOAPClient は SOAPConnectorFactory オブジェクトを使って、WSDL で指定されているトランスポート プロトコルのためのコネクタを作成します。 |
pPropertyValue
pPropertyValue はプロパティの値です。
Visual Basic の構文
Property ClientProperty(PropertyName As String) As Variant
Visual Basic の例
Dim Client As New SOAPClient
Client.ClientProperty("ServerHTTPRequest") = True
ConnectorProperty プロパティ
SOAPClient オブジェクトが使用するトランスポート プロトコル コネクタに固有のプロパティを設定し、取得します。
メソッド定義
[propget] HRESULT ConnectorProperty (
[in] BSTR PropertyName,
[out, retval] VARIANT* pPropertyValue);
[propput] HRESULT ConnectorProperty (
[in] BSTR PropertyName,
[in] VARIANT pPropertyValue);
パラメータ
PropertyName
PropertyName は、設定または取得するプロパティの名前です。どのプロパティがサポートされるかは、使用されるコネクタによって異なります。使用されるコネクタは、Web Services Description Language (WSDL) ファイルの <soap:binding> transport 属性によって指定されているプロトコルによって決定されます。
pPropertyValue
pPropertyValue はプロパティの値です。
Visual Basic の構文
Property ConnectorProperty(PropertyName As String)
Visual Basic の例
Dim Client As New SOAPClient
Client.mssoapinit WSDLFile, Service, Port
Client.ConnectorProperty("ProxyUser") = User
Client.ConnectorProperty("ProxyPassword") = Password
コネクタ プロパティ
プロパティ | 説明 |
AuthPassword | エンド ポイント認証に使用されるパスワード。 |
AuthUser | エンド ポイント認証に使用されるユーザー名。 |
EndPointURL | エンド ポイント URL。 |
ProxyPassword | プロキシ認証に使用されるパスワード。 |
ProxyPort | 使用するプロキシ サーバーのポート。 |
ProxyServer | プロキシ サーバーの IP アドレスまたはホスト名。 |
ProxyUser | プロキシ認証に使用されるユーザー名。 |
SOAPAction | SOAPAction HTTP ヘッダーで使用される値。 |
SSLClientCertificateName | Secure Sockets Layer (SSL) プロトコルで使用されるクライアント証明書を識別する文字列 (使用する場合)。構文は次のとおりです。
デフォルト値は CURRENT_USER\MY (Microsoft Internet Explorer が使用するのと同じストア) です。 |
Timeout | HttpConnector のタイムアウト。このタイムアウトはミリ秒単位です。 |
UseSSL | SSL を使用するかどうかを指定するブール値 (true または false)。 |
Detail プロパティ
detail プロパティは読み取り専用です。これは、Simple Object Access Protocol (SOAP) メッセージの <Fault> 要素の <detail> 要素の値を与えます。
メソッド定義
[propget] HRESULT detail(
[out, retval] BSTR* bstrDetail);
パラメータ
bstrDetail
bstrDetail はフォールトの detail です。
Visual Basic の構文
Property detail As String
HeaderHandler (SOAPClient)
このクライアント インスタンスに対する次の呼び出しのヘッダー ハンドラを設定します。
メソッド定義
HRESULT HeaderHandler([in] IDispatch* rhs);
パラメータ
rhs
rhs は、IHeaderHandler を実装する COM クラス インターフェイスへの参照です。
Visual Basic の構文
Property HeaderHandler As Object
Visual Basic の例
Set sc = WScript.CreateObject("MSSOAP.SOAPClient")
sc.mssoapinit "https://localhost/DocSample7/DocSample7.wsdl"
sc.HeaderHandler =
WScript.CreateObject("SessionInfoClient.clientHeaderHandler")
Sc.SomeMethod "param1", "param2"
Faultactor プロパティ (SOAPClient)
faultactor プロパティは読み取り専用で、フォールトを生成した Universal Resource Identifier (URI) を与えます。
メソッド定義
[propget] HRESULT faultactor(
[out, retval] BSTR* bstrActor);
パラメータ
bstrActor
bstrActor は、フォールトを生成した URI です。
Visual Basic の構文
Property faultactor As String
Visual Basic の例
wscript.echo soapclient.faultactor
Faultcode プロパティ (SOAPClient)
faultcode プロパティは読み取り専用です。これは、Simple Object Access Protocol (SOAP) メッセージの <Fault> 要素の <faultcode> 要素の値を与えます。
メソッド定義
[propget] HRESULT faultcode(
[out, retval] BSTR* bstrFaultcode);
パラメータ
bstrFaultcode
bstrFaultcode は <faultcode> 要素の値です。
Visual Basic の構文
Property faultcode As String
Visual Basic の例
wscript.echo soapclient.faultcode
Faultstring プロパティ (SOAPClient)
faultstring プロパティは読み取り専用です。これは、Simple Object Access Protocol (SOAP) メッセージの <Fault> 要素の <faultstring> 要素の値を与えます。
メソッド定義
[propget] HRESULT faultstring(
[out, retval] BSTR* bstrFaultstring);
パラメータ
bstrFaultstring
bstrFaultstring は <faultstring> 要素の値です。
Visual Basic の構文
Property faultstring As String
Visual Basic の例
wscript.echo soapclient.faultstring