概要 : サービス コントロールおよび Web サービス クライアント

サービス コントロールを使用すると、Web サービス クライアントが Web サービスに簡単にアクセスできるようになります。サービス コントロールは、システム コントロールの 1 つとして提供されています。サービス コントロールでは、サービス コントロールのメソッドを呼び出すだけで、Web サービスのオペレーションを呼び出すことができます。サービス コントロールは、SOAP による Web サービスとのメッセージ交換を管理し、Web サービスのオペレーションの結果を返します。

サービス コントロールは、すべて com.bea.control.ServiceControl 基本クラスを継承するインタフェースです。

サービス コントロールは、アプリケーションと Web サービスの間のインタフェースを提供します。サービス コントロールを使用すると、アプリケーションはその Web サービスのメソッドを呼び出したりコールバックを処理したりできます。サービス コントロールを使用すると、Workshop で構築したものだけでなく、WSDL ファイルを使用できるどの Web サービスにも接続できます。

いくつかの概念を理解しておくと、Web サービス コントロールを使用する際の役に立ちます。このトピックでは、それらの概念の一部について概要を説明します。

パブリック規約について

Web サービスは、パブリック規約を定義およびエクスポーズします。一般に、パブリック規約は WSDL ファイルで表現されます。パブリック規約では、Web サービスが実行可能なオペレーションと、オペレーションにアクセスし、オペレーションの結果を受け取るためにサービスに送信されるメッセージのフォーマットを記述します。規約は、Web サービスの開発者が完全に管理できるので、Web サービスのクライアントが変更することはできません。

Workshop で開発した Web サービスのパブリック規約は、@WebMethod アノテーションでマークしたすべてのメソッドと Callback インタフェースのすべてのメンバーのコレクションです。各パブリック規約は、Web サービスの Java ソース ファイルで完全に定義されます。WSDL ファイルを Web サービスから生成すると、パブリック規約は WSDL 標準に従って表現されます。

Web サービス コントロールは、その Web サービス コントロールが表す Web サービスのパブリック規約に違反したり、規約を変更したりすることはできません。このため、Web サービス コントロールに対して可能な変更は限られています。たとえば、対象の Web サービスでサポートしていない通信プロトコルを使用するようにサービス コントロールを変更することはできません。

Web サービス コントロールと Web サービスの関係

Workshop では、Web サービス コントロールは、Web サービスの仲介役、つまりプロキシとして機能します。Web サービス X は、Web サービス Y のオペレーションを呼び出すために、Y 用のサービス コントロールの Java メソッドを呼び出します。サービス コントロールは、Java メソッド呼び出しを適切なメッセージに変換してから Web サービス Y に送信し、Y で使用可能なプロトコルによって Web サービス Y と通信します。また、サービス コントロールは、Web サービス Y から返されたメッセージをサービス X の Java メソッド呼び出しに変換します。

このような方法で、サービス コントロールは、アプリケーションレベルの Java コードを実装するだけで Web サービス X が Web サービス Y を使用することを可能にします。Web サービス X の開発者には、メッセージ フォーマットまたはプロトコルについての詳しい知識は必要ありません。

関連トピック

サービス コントロール


さらにヘルプが必要ですか。質問は Workshop ニュース グループまでお寄せください。