Webサービス・クライアントのおさらい
まず、Webサービス・クライアント作成のおさらいをしましょう。第3回では、Webサービス・クライアントを作る前に、JavaBeansをスタンドアロンのJavaアプリケーションとして動かしました。
このときのJavaアプリケーションは次のようなプログラムでした(第3回より)。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Beanをインスタンス化して、Beanの持つ機能を呼び出し、結果を得るというものでした(詳しくは第3回を参照してください)。
Javaアプリケーションでテストをした後、JavaBeansをWebサービス化しました。このWebサービス・プロバイダの作業は前回(第6回)でお話ししましたので、今回はWebサービス・リクエスターの作業をおさらいしてみます。
第3回のWebサービス・クライアントの作成では、いきなりプログラムを作りました。読者の中には「なぜ作れるんだ?」という疑問を持った方がいらっしゃるかもしれません。そうです。たまたま同じ人が「Webサービス・プロバイダ」を演じ、Webサービスを作成し、その人が「Webサービス・リクエスター」を演じ、Webサービス・クライアントを作ったからこそ(いきなりプログラムが)作れたのです。
そして、「マニュアル運転」Webサービス・クライアントでは、次のようなプログラムを作りました(第3回より)。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
いまさらですが、このプログラムは容易に理解できましたか? 確かにある程度決まった処理を記述していくものですが、とても簡単とはいえないと思います。
Webサービス・リクエスターも簡単にプログラムを作りたい
このように、これまでのWebサービス・クライアントは、Axisの提供するWebサービス専用のAPIを駆使していました。そのため、それなりに面倒なプログラミングになっていて、「直感的な」プログラミングとはかなりかけ離れたものでした。このプログラムを書くためには、SOAP RPCの動作を知っていることが前提です。「メッセージ」を組み立てて「実行(invoke)」し「結果」を受け取るというSOAP RPCの手順の繰り返しをプログラムの中に書いていく必要があります。第3回で解説したように、よく読めばJavaアプリケーションと対応していることが読み取れますが、Axis APIのマニュアルなしで書いていくことは難しいのではないでしょうか。
そこで、せっかくWebサービスの仕様をXMLで記述しているWSDLファイルがあるのですから、なんとかそこからWebサービス・クライアントを簡単に作れないものでしょうか。
これまでのWebサービス・クライアントのようにSOAPを意識したプログラミングではなく、あたかもJavaアプリケーションのように記述することができたなら、Webサービス・リクエスターは簡単にWebサービス・クライアントを作ることができるはずです。
Copyright © ITmedia, Inc. All Rights Reserved.