RESTful Web サービスの作成
従来の Web サービスと同様に、RESTful Web サービスは、ZIETrans 統合オブジェクトとその入出力プロパティーから作成されます。従来の Web サービスの場合は、Web サービス・リソースのロケーションおよび 入出力のプロパティーを WSDL ファイルに定義します。一方、RESTful Web サービス の場合は、リソースを表現する URI、リソースに対して作動する HTTP メソッド、およびメッセージ・フォーマットを定義する HTTP ヘッダー情報を使用して Web サービス・リソースへのアクセスを定義します。
次の図には、RESTful Web サービスのための ZIETrans サポートのアーキテクチャー構造が含まれています。
- ZIETrans RestServlet は、URI と HTTP メソッドを含む HTTP 要求をクライアントから 受信します。
- RestServlet では、この URI および HTTP メソッドに含まれる情報を統合オブジェクトの JAX-RS リソースにマップすることにより、要求を経路指定します。
- JAX-RS リソースは、要求を受け取り、要求に含まれるパラメーター を読み取り、統合オブジェクトを初期化し、プロンプトを設定し (入力プロパティー)、 統合オブジェクトを実行します。
- JAX-RS リソースは、統合オブジェクトから抽出結果 (出力プロパティー)を受け取り、応答を生成し、それを RestServlet に返します。
- RestServlet はクライアントに応答します。
図 1. ZIETrans RESTful Web サービス・アーキテクチャー
注: ZIETrans 統合オブジェクトを実行するには、クライアントが一度に 1 つの統合オブジェクトを呼び出す必要があります。チェーニングされた統合オブジェクトの場合は、 クライアントは、統合オブジェクトの 1 つを呼び出してからリンク・キーを渡して次の統合オブジェクトを呼び出す必要があります。または、リンク・キーを渡しながら統合オブジェクトを 1 つずつ呼び出すように、開発者がラッパーを変更する必要があります。
ZIETrans には、統合オブジェクト用の JAX-RS リソースの作成と、HTTP 要求内の URI と HTTP メソッドを正しい JAX-RS リソースにマップできるようにするためのマッピングに使用できるツールが用意されています。