Soapsuds ツール (Soapsuds.exe)
Soapsuds ツールは、リモート処理と呼ばれる手法を使用して XML Web サービスと通信するクライアント アプリケーションをコンパイルする場合に役立ちます。Soapsuds.exe は、次の機能を実行します。
- 共通言語ランタイムアセンブリで公開されるサービスを記述する XML スキーマを作成します。
- XML スキーマで記述されるサービスにアクセスするランタイム アセンブリを作成します。スキーマ定義はローカル ファイルとして保存するか、またはインターネットから動的にダウンロードできます。
soapsuds {-url:schemaUrl | -types:type1,assemblyname[,serviceEndpoint]
[;type2,assemblyname][...]] | -is:schemafile | -ia:assemblyfile} [options]
オプション | 説明 |
---|---|
-domain:domain
または -d:domain |
認証情報を要求するサーバーに接続するときに使用するドメイン名を指定します。 |
-generatecode
または -gc |
コードを生成します。このオプションは、-od:. (末尾のピリオドは、コードが現在のディレクトリに格納されることを示します) を使用するのと同じです。 |
-httpproxyname:name
または -hpn:name |
HTTP プロキシ サーバーを経由してサーバーに接続するときに使用する HTTP プロキシ名を指定します。 |
-httpproxyport:number
または -hpp:number |
HTTP プロキシ サーバーを経由してサーバーに接続するときに使用する HTTP プロキシ ポート番号を指定します。 |
-inputassemblyfile: assemblyfile
または -ia:assemblyfile |
入力アセンブリ ファイルを指定します。このツールは、アセンブリからすべての型をインポートします。入力アセンブリを指定する場合は、.exe 拡張子または .dll 拡張子を含めないでください。 |
-inputdirectory:directory
または -id:directory |
ダイナミック リンク ライブラリ (DLL: Dynamic Link Library) ファイルのディレクトリ位置を指定します。 |
-inputschemafile:schemafile
または -is:schemafile |
入力 XML スキーマ ファイルを指定します。 |
-nowrappedproxy
または -nowp |
ラップされたプロキシを作成しません。このオプションを指定しない場合は、既定の処理としてラップされたプロキシが作成されます。 |
-outputassemblyfile:assemblyfile
または -oa:assemblyfile |
指定したアセンブリ ファイルに出力を保存します。Soapsuds.exe は、アセンブリを生成するときに常にソース コードを生成します。 |
-outputdirectory:outputdirectory
または -od:outputdirectory |
指定した出力ディレクトリに出力を保存します。 |
-outputschemafile:schemafile
または -os:schemafile |
指定した XML スキーマ ファイルに出力を保存します。 |
-password:password
または -p:password |
認証情報を要求するサーバーに接続するときに使用するパスワードを指定します。 |
-proxynamespace:namespace
または -pn |
生成されたプロキシ内のコードの名前空間を指定します。このオプションは、相互運用名前空間以外には使用しないでください。 |
-sdl | サービス記述言語 (SDL) スキーマを生成します。このオプションを指定しない場合、このツールは Web サービス記述言語 (WSDL) スキーマを生成します。SDL の詳細については、「XML Web サービスの説明」を参照してください。 |
-serviceendpoint:URL
または -se:URL |
WSDL ファイルに配置するサービスのエンド ポイントの URL または URL へのパスを指定します。 |
-strongnamefile:filename
または -sn:filename |
生成されたアセンブリに、filename で指定されたキー ペアを割り当てます。このファイルは、厳密名ツール (Sn.exe) を使用して生成できます。 |
-types: type1,assemblyname[,serviceEndpoint] [;type2,assemblyname[,serviceEndpoint]] [...] | 入力型リストを指定します。 |
-urltoschema:schemaURL
または -url:schemaURL |
XML スキーマの取得元の URL を指定します。 |
-username:username
または -u:username |
認証情報を要求するサーバーに接続するときに使用するユーザー名を指定します。 |
-wrappedproxy
または -wp |
ラップされたプロキシを作成します。これは、既定の設定です。 |
-wsdl | WSDL スキーマを生成します。これは、既定の設定です。詳細については、「XML Web サービスの説明」を参照してください。 |
解説
クライアント アプリケーションから XML Web サービスにアクセスするには、次の手順を実行します。
- XML Web サービスの XML スキーマをダウンロードします。このツールの -urltoschema オプションを使用すると、URL を指定してスキーマを直接参照できます。XML Web サービスが Web サービスを発行するときに、これらのスキーマ ファイルを自動的に生成します。
- Soapsuds.exe を使用して、XML スキーマをランタイム アセンブリに変換します。このツールは、アセンブリを生成するときに常にソース コードを生成します。
- アプリケーションをコンパイルするときに、クライアント アプリケーションでこのアセンブリを参照します。また、アプリケーションがこれらのアセンブリ内の型を XML Web サービスに対するプロキシとして認識するように、リモート処理をセットアップする必要もあります。詳細については、「.NET リモート処理の概要」を参照してください。
例
URL からスキーマをダウンロードし、そのスキーマを XML ファイルに保存するコマンドを次に示します。
soapsuds -url:https://localhost/Service/MyService.soap?wsdl
-os:MyService.xml
URL からスキーマをダウンロードし、コードを生成するコマンドを次に示します。
soapsuds -url:https://localhost/Service/MyService.soap?wsdl -gc
URL からスキーマをダウンロードし、そのスキーマをファイルに保存してから、コードを生成するコマンドを次に示します。
soapsuds -url:https://localhost/Service/MyService.soap?wsdl
-os:StockQuote.xml -gc
URL からスキーマをダウンロードし、コードを生成およびコンパイルしてから、アセンブリを生成するコマンドを次に示します。
soapsuds -url:https://localhost/Service/MyService.soap?wsdl
-oa:StockQuote.dll
ある型をスキーマに変換し、そのスキーマをファイルに保存するコマンドを次に示します。
soapsuds -types:MyClass.MyMethod,Service -os:StockQuote.xml
ある型をスキーマに変換し、コードを生成するコマンドを次に示します。
soapsuds -types:MyClass.MyMethod,Service -gc
ある型をスキーマに変換し、そのスキーマをファイルに保存してから、コードを生成するコマンドを次に示します。
soapsuds -types:MyClass.MyMethod,Service -os:MyService.xml -gc
参照
.NET Framework ツール | .NET リモート処理の概要 | 厳密名ツール (Sn.exe) | XML Web サービスの概要 | Web サービス記述言語ツール (Wsdl.exe) | Web サービス検出ツール (Disco.exe)