ステップ 3: 開発プラットフォームに WSDL ファイルをインポートする
WSDL ファイルを作成または取得したら、開発環境内のクライアント Web サービスアプリケーション構築に必要なオブジェクトを生成できるよう、WSDL ファイルを開発プラットフォームにインポートする必要があります。このセクションでは、WSC と Microsoft Visual Studio のサンプルについて説明します。その他の開発環境の指示については、プラットフォームの製品マニュアルを参照してください。
Java 環境での使用方法 (WSC)
Java 環境は、サーバ側オブジェクトのプロキシとして機能する Java オブジェクトを使用して、API にアクセスします。API を使用する前に、まず組織の WSDL ファイルからこれらのオブジェクトを生成する必要があります。
SOAP クライアントには、このプロセスで使用する独自のツールがあります。WSC では、wsdlc ユーティリティを使用します。
このコマンドでは、指定された WSDL ファイルに基づいて jar 出力ファイルを生成します。jar 出力ファイルの作成後、Java プログラムで wsc jar ファイル (wsc-22.jar など) と共に参照し、クライアントアプリケーションを作成します。
Microsoft Visual Studio での使用方法
Visual Studio 言語は、サーバ側オブジェクトのプロキシとして機能するオブジェクトを使用して API にアクセスします。API を使用する前に、まず組織の WSDL ファイルからこれらのオブジェクトを生成する必要があります。
サーバ側オブジェクトのプロキシクラスを取得したら、非文字列項目に値を設定しているかどうかを指定する必要があります。詳細は、「.NET、非文字列項目、および Enterprise WSDL」を参照してください。
Visual Studio には、WSDL ファイルをインポートして XML Web サービスクライアントを生成する 2 つの方法があります。IDE ベースの方法と、コマンドラインを使用する方法です。このステップごとの説明では、IDE を使用して WSDL ファイルをインポートする方法を説明します。
XML Web サービスクライアントは、XML Web サービスを参照して使用するコンポーネントまたはアプリケーションです。必ずしもクライアントベースのアプリケーションである必要はありません。実際、多くの場合、ご使用の XML Web サービスクライアントは、Web フォームなどのその他の Web アプリケーションであったり、その他の XML Web サービスであったりします。マネージコードで XML Web サービスにアクセスする場合、プロキシクラスと .NET Framework がすべてのインフラストラクチャコードを処理します。
マネージコードから XML Web サービスにアクセスするには、次の手順を行います。
- プロジェクト名 Walkthrough を編集します (後述のサンプルの using ディレクティブを your_project_name.web_reference_name に変更します)。Web 参照を、アクセスする XML Web サービスのプロジェクトに追加します。Web 参照は、XML Web サービスの公開されたメソッドのプロキシとして機能するメソッドでプロキシクラスを作成します。
- Web 参照の名前空間を追加します。
- プロキシクラスのインスタンスを作成し、その他のクラスのメソッドと同様にそのクラスのメソッドにアクセスします。
Visual Studio のバージョンと推奨される開発者環境に応じて、.NET 2.0 スタイルの Web 参照か、.NET 3.0 スタイルのサービス参照のいずれかを追加できます。.NET 3.0 スタイルの参照では、SforceService ではなく SoapClient のようなサービスを使用します。
- Visual Studio 2010 以前を使用している場合は、[プロジェクト] メニューで [Web 参照を追加] を選択します。Visual Studio の以降のバージョンでは、[プロジェクト] メニューで [サービス参照を追加]、[詳細]、[Web 参照を追加] の順に選択します。
- [Web 参照を追加] ダイアログボックスの URL ボックスに、次のように、アクセスする XML Web サービスについてのサービス説明を取得する URL を入力します。
c:\WSDLFiles\enterprise.wsdl
- [Go] をクリックして、XML Web サービスの情報を取得します。
- Web 参照名のボックスで、Web 参照に使用する名前である、sforce への Web 参照の名前を変更します。
- [参照を追加] をクリックして、対象 XML Web サービスの Web 参照を追加します。
- Visual Studio は、サービスの説明を取得し、プロキシクラスを生成して、アプリケーションと XML Web サービス間を接続します。
SObject クラスの定義では、Visual Studio は、SObject 定義の一部である System.Xml.Serialization.XmlIncludeAttribute のクラス参照にケースと行動をラップしません。Visual Studio のこの問題を回避するには、次のようにケースや行動で XmlIncludeAttribute 設定を編集する必要があります。C# には適用されず、Enterprise WSDL を使用する場合にのみ適用されます。