ステップ 3: 開発プラットフォームに WSDL ファイルをインポートする
WSDL ファイルを作成または取得したら、開発環境内のクライアント Web サービスアプリケーション構築に必要なオブジェクトを生成できるよう、WSDL ファイルを開発プラットフォームにインポートします。このセクションでは、WSC と Microsoft Visual Studio のサンプルについて説明します。その他の開発環境の指示については、プラットフォームの製品マニュアルを参照してください。
Java 環境での使用方法 (WSC)
Java 環境は、サーバー側オブジェクトのプロキシとして機能する Java オブジェクトを使用して、API にアクセスします。API を使用する前に、まず組織の WSDL ファイルからこれらのオブジェクトを生成する必要があります。
SOAP クライアントには、このプロセスで使用する独自のツールがあります。WSC では、wsdlc ユーティリティを使用します。
1java -classpath pathToJAR/force-wsc-XX.X.X-uber.jar com.sforce.ws.tools.wsdlc pathToWsdl/WsdlFilename pathToOutputJar/OutputJarFilenameこのコマンドでは、指定された WSDL ファイルに基づいて jar 出力ファイルを生成します。jar 出力ファイルの作成後、Java プログラムで WSC .jar ファイル (例、force-wsc-57.0.0-uber.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 のようなサービスを使用します。
- [プロジェクト] メニューで [サービス参照を追加]、[詳細]、[Web 参照を追加] の順に選択します。
- [Web 参照を追加] ダイアログボックスの URL ボックスに、次のように、アクセスする XML Web サービスについてのサービス説明を取得する URL を入力します。
C:\WSDLFiles\enterprise.wsdl
- XML Web サービスの情報を取得するには、[Go] をクリックします。
- Web 参照名のボックスで、Web 参照に使用する名前である、sforce への Web 参照の名前を変更します。
- 対象 XML Web サービスへの Web 参照を追加するには、[参照を追加] をクリックします。
- Visual Studio は、サービスの説明を取得し、プロキシクラスを生成して、アプリケーションと XML Web サービス間を接続します。
ただし、SObject クラスの定義では、SObject 定義に含まれる System.Xml.Serialization.XmlIncludeAttribute のクラス参照で Case と Event がラップされません。Visual Studio のこの問題を回避するには、次のように Case と Event で XmlIncludeAttribute 設定を編集する必要があります。この編集は、Enterprise WSDL の Enterprise バージョンを使用する場合にのみ必要で、C# では必要ありません。
1 System.Xml.Serialization.XmlIncludeAttribute(GetType([Event])), _
2
3 System.Xml.Serialization.XmlIncludeAttribute(GetType([Case])), _