Webサービスとは,Web関連の技術を利用して,システム間で情報をやり取りし,ほかのシステムが持つアプリケーションをWeb上で使用できるようにした仕組みです。また,Webサービスの仕組みによってネットワーク経由で公開,実行できるアプリケーションのことも,Webサービスといいます。アプリケーションサーバでは,SOAP WebサービスとRESTful Webサービスを実行できます。
SOAP Webサービスでは,SOAPと呼ばれるプロトコルを使用してメッセージをやり取りします。SOAPプロトコルの下位のトランスポート層にはHTTPプロトコルを利用します。アプリケーションサーバでは,JAX-WS仕様に従って,SOAPメッセージとSOAP Webサービス・クライアントとの間のバインディングを実現します。
RESTful Webサービスでは,HTTPプロトコルのGETやPOSTなどのメソッドを直接使用してメッセージをやり取りします。アプリケーションサーバでは,JAX-RS仕様に従って,HTTPメッセージとRESTful Webサービスの間のバインディングを実現します。RESTful Webサービスの利用環境には,RESTful Webサービスのサーバになる実行環境が必要です。アプリケーションサーバではこの実行環境を構築できます。RESTful Webサービスのクライアントは,RESTful Webサービス用クライアントAPIか,または標準的なJava APIを使用して開発します。
Webサービス利用環境の概要を次の図に示します。
図4-9 Webサービス利用環境の概要
Webサービスの利用環境には,Webサービスのクライアントになる実行環境と,Webサービスのサーバになる実行環境が必要です。アプリケーションサーバでは,これら両方の実行環境を構築できます。
Webクライアントのユーザからのリクエストを受け付けた実行環境(Webサービスのクライアント)は,Webサービスを提供する実行環境(Webサービスのサーバ)にSOAPメッセージ(SOAP Webサービスの場合)またはHTTPメッセージ(RESTful Webサービスの場合)を送ります。Webサービスのサーバでは,処理を実行して,結果をレスポンスとしてWebサービスのクライアントに送信します。クライアントとWebサービスのサーバ間の通信には,SOAPプロトコル(SOAP Webサービスの場合)またはHTTPプロトコル(RESTful Webサービスの場合)を使用します。
機能の詳細については,マニュアル「アプリケーションサーバ Webサービス開発ガイド」を参照してください。