Web サービスは、インターネット標準およびインターネット・プロトコルを使用してサービス
またはアプリケーションを呼び出すテクノロジーです。
このトピックを読んで、Web サービスの開発および実装に
使用される、コア・テクノロジーについて学習することができます。
既存のアプリケーションを使用しており、このアプリケーションが提供するサービスを他のユーザー (組織の内部または外部) も使用できるようにする場合は、Web サービス・テクノロジーを使用して、このサービスに標準 Web インターフェースを提供できます。Web サービスは、各アプリケーションがどのように
実装されているか、あるいはどこに置かれているかに関わらず、複数のアプリケーションを 1 つに結合するミドルウェア
として定義できます。
Web サービスは、インターネットと同様に抽象的なレベルで機能します。
Web サービスは、
Web に対応しており、service-oriented architecture (SOA) の実装に使用できるテクノロジーの 1 つである、
任意のオペレーティング・システム、ハードウェア・プラットフォーム、またはプログラム言語のいずれでも機能します。
Web サービスを開発およびインプリメントするために使用するコア・テクノロジーは、以下のとおりです。
また、WebSphere Application Server では、Web サービスを最大限に活用できるように、以下のメカニズムが提供されています。
- プライベート Universal Description,
Discovery and Integration (UDDI) レジストリー
- プライベート UDDI レジストリーは、組織内外で使用可能な Web サービスに関する情報を
公開および検出する方法を提供します。
このレジストリーを使用して、組織内外のユーザーが Web サービスを使用できるようにします。
グループ企業は、このレジストリーを使用して Web サービスを共有したり、グループ外のユーザーが
Web サービスを使用できるようにすることができます。簡単に説明すると、プライベート UDDI レジストリーは、業務用の電話帳が勤務先の住所および電話番号に対して行っているのと同じことを、Web サービスに対しても行います。ただし、プライベート UDDI レジストリーは、単なる電話帳以上のことを行います。Web サービスが持つかなりの能力および柔軟性を利用するためには、プライベート UDDI レジストリーを整理しておく必要があります。
Web サービスを UDDI に公開すると、他のユーザーまたはアプリケーションがこの Web サービスを検出および再利用できるようになります。これにより、開発に必要な時間、労力、およびコストを節約できます。また、同じアプリケーションの異なるインプリメンテーションを複数維持する必要を最小限に抑えることができます。
- Web Services Invocation Framework
(WSIF)
- Web サービスの SOAP バインディングは、WSDL 仕様の一部です。 したがって、Web サービスの使用を考える場合は、
まず、何らかの SOAP クライアント API を使用して、SOAP メッセージをアセンブルし、
ネットワークを介してそれをサービス・エンドポイントに送信することを考えます。
WSDL 仕様では、拡張ポイントを使用でき、Web サービスを呼び出す代替方法について記述可能です。 WSIF クライアント
は、これらの非 SOAP 記述を使用して、より効率的な方法でサービスを呼び出すことができます。 例えば、Web サービス・プロバイダーは、
サービス用の SOAP バインディングと、
ローカル・サービス・インプリメンテーション (Java クラス) を Web サービスとして扱えるようにする、
ローカル Java バインディングを提供することができます。
クライアントをサービスと同じ環境でデプロイすると、
そのサービス用のローカル Java バインディングが使用できます。
このバインディングでは直接 Java が呼び出されるため、SOAP メッセージを送受信する場合よりも効率的にサービスとの通信を行うことができます。
- Web サービスを WSIF 対応サービスとしてデプロイするには、まず Web サービスを開発およびデプロイし、その Web サービスの WSDL 文書に基づいて WSIF クライアントを開発します。
- Web サービスおよびサービス統合バス (SIBus)
Web サービスは、SIBus を使用して Web サービス要求の単一制御点、アクセス、および検証を提供できるので、異なるグループの Web サービス利用者が使用できる Web サービスを制御できます。
SIBus 対応 Web サービスを使用すると、以下の目標を達成できます。
- バス宛先で使用可能な、内部でホスティングされたサービスを利用して、そのサービスを Web サービスとして使用可能にすることができます。
- 外部でホスティングされた Web サービスを用いて、それをバス宛先で内部的に使用可能にします。
詳しくは、サービス統合テクノロジーを介した Web サービスの使用可能化を参照してください。