この Web サービスは、Auction アプリケーションが使用する項目データベースと、XML を使用して相互作用するための別の方法として作成されました。 Auction Web サービスのユーザーは、データベースに対して項目を追加および削除したり、オークションに出品中の現行項目のいずれかまたはすべてに関する情報を表示させたりできます。
Web サービスは、インターネットを介して公開、配置、および起動できる関連したアプリケーション機能のセットです。 Web サービスを使用すると、異なるプラットフォームで稼働中の異なる言語で作成されたアプリケーションが XML ベースのコンポーネントを使用して相互協調処理を行えます。
Web サービスの作成方法には、トップダウンとボトムアップという 2 種類の汎用アプローチがあります。 トップダウン・アプローチでは、Web サービスは Web サービス記述言語 (WSDL) ファイルと XML Schema Definition (XSD) ファイルで定義されている Web サービス・インターフェースと XML 型をベースにします。 その上で、開発者は、ビジネス・ロジックとのインターフェースに適用するスケルトンの実装に変更を加えます。 ボトムアップ・アプローチでは、Java™ Bean または EJB に組み込まれている既存のビジネス・ロジックをベースにして、 Web サービスを作成します。 WSDL ファイルは、結果の Web サービス・インターフェースを記述するために生成されます。 Web サービスの作成方法としては、使用する Web サービス・インターフェースと XML 型をより制御しやすいトップダウン・アプローチの方をお勧めします。
Auction Web サービスは、最初に WSDL ファイルと XSD ファイルを定義するというトップダウン・アプローチを使用して作成されました。 WSDL ファイルでは、公開するインターフェース、呼び出される操作、およびそれらの操作の実行中に渡されるメッセージを定義します。 それらのメッセージを正確に定義するために、WSDL ファイルから XSD ファイルを参照します。
次の図に、この Web サービスの開発ステージを示します。 WSDL エディターと XSD エディターは、WSDL ファイルと XSD ファイルを定義するために使用されます。2 番目の コンポーネント (Java Bean スケルトン) には、すべてウィザードを使用して作成された 3 つの特殊な部分が 含まれています。 これらの部分は同時に生成されて、1 つのユニットとして一緒にテストされるので、これらについてはまとめて一緒に説明します。
Web サービス記述言語 (WSDL) ファイルと XML Schema Definition (XSD) ファイルで定義されている Web サービス・インターフェースと XML 型により、要素とそれらに関連付けられているアクションが定義され、Web サービスの外観と動作が記述されます。
Auction Web サービスが作成されたときには、XML スキーマ・エディターを使用して新しい XSD ファイルが作成されて、Web サービスに渡される XML スキーマ・タイプが定義されました。
次に、「新規 WSDL ファイル」ウィザードを使用して新しい WSDL ファイルが作成されました。このウィザードにより、文書リテラルのデフォルトのスタイルおよび使用を使ってスケルトン WSDL ファイルが作成されました。 これが、Web サービス・インターオペラビリティー組織 (WS-I) が推奨している選択です。 WS-I は、オープンな業界組織で、ベンダーが異なる Web サービス間でも相互運用を確実に行えるようにガイドラインを公開しています。
スケルトン WSDL ファイルの作成後には、WSDL エディターを使用して WSDL ファイルが編集されました。
WSDL ファイル内に、新しい操作、メッセージ、およびパーツが作成され、バインディングも新しく生成されました。
WSDL エディターは、XML スキーマ・エディターと密結合されています。
次の画面でも説明していますが、WSDL ファイル内のパーツが XSD ファイル内で定義されている
XML スキーマ・タイプを参照できるように、XML スキーマ・エディターは
WSDL エディター内から開くことができるようになっています。
Java Bean スケルトンは、「Web サービス」ウィザードを使用して、WSDL および XSD ファイルから作成します。 「Web サービス」ウィザードは、JAX-RPC プログラミング・モデルに従って Java コードを生成します。 Web サービス・デプロイメント記述子は、J2EE 仕様の Web サービスに準拠したものが生成されます。
Java プロキシーと サンプル JSP を、スケルトン Web サービスと同時に作成すると、Web サービスのすべての 要素を、はるかに簡単にまとめてテストできるようになります。
Web サービス・スケルトンが作成されると、 生成された Java スケルトン実装ファイルが Java エディター内に開きます。 このファイルには、WSDL ファイルの定義どおりに、メソッドが必要とする インターフェースが含まれています。 この時点で、開発者はスケルトン実装ファイルを変更して、バックエンドのビジネス・ロジックにアクセスできるようにしました。
生成されたサンプル JSP は、基本的なものですが機能します。その内容は 3 つのフレームに編成されています。 左側のフレームには、ユーザーが対話式に使用可能なすべてのメソッドのリストが含まれています。 これらのメソッドのいずれかをクリックすると、右上のフレームに入力域が開きます。 このフォームに値を入力して「呼び出し」ボタンをクリックすると、その入力を処理するためのメソッドが呼び出されて、右下のフレームに結果が表示されます。
この Auction Web サービスの場合は、生成されたサンプル JSP を変更して、より視覚的に訴えるインターフェースを作成し、さらに配列処理用のサポートを追加しました。なぜなら、データベース内のすべての項目のリストを戻す操作では配列が戻されるからです。