Webサービスを実行してみる
いよいよWebサービス・クライアントからWebサービスを呼び出してみましょう。次のコマンドを実行します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
エラーなく2つの数字が表示されればOKです。もし何か問題がある場合は、エラーが表示されます。
さて、結果の数字はどうなっていますか?「0 0」となっていませんか? エラーがなく数字が返ってきているということは、SOAPのリモートプロシージャコールはうまくいっているようですが、結果が期待している値になっていません。これでいいのでしょうか?
なぜ結果が違うのか?
このWebサービスは図2のように呼び出されているはずです。
しかし、結果が期待した値にならないのはなぜでしょうか? このように呼び出されていないのでしょうか? 図が間違っているとするならば、正しい図はどのようになるのでしょうか?
このようなトラブルに何度も遭遇している読者の方ならば「あれだな!」と予想がつくでしょう。しかし、いまは分からなくても問題ありません。なぜならばこれを解くのが次回までの宿題であり、次回はこのテストプログラムを使って解決していくからです。
次回までに次のヒントを参考に理由を考えてみてください。
ヒント
- SimpleAddBeanのコンストラクタに何か標準出力文を入れてみる
- EJBのSession Bean(リモート呼び出しBean)と似ている?
今回のまとめ
今回は自分でWebサービスとWebサービス・クライアントを作成する手順を解説しました。Webサービスを作る手順を理解していただけたでしょうか? ここで、もう一度おさらいをしておきます。
Webサービス作成手順
- JavaBeansの作成
- JavaBeansのテスト(Javaアプリケーションなど)
- JavaBeansをAxisServlet配下に保存
- 配置記述子の作成とAdminClientによる配置
このWebサービスを利用するWebサービス・クライアントの作成手順はJavaアプリケーションと同様です。プログラムを記述して、コンパイル、実行します。
さて、実行した結果がスタンドアロンのJavaアプリケーションと異なりました。JavaBeansもWebサービス・クライアントもプログラムは間違ってなさそうです。では、何が問題だったのでしょうか?
次回、この「?」を調査します。そして、「!」を感じたときにWebサービスの一部を理解したことになるはずです。次回をお楽しみに。
Copyright © ITmedia, Inc. All Rights Reserved.