AXIS
SOAPエンジンであるAXISを使用して,Webサービスを作成,提供する方法について調査していく.
AXISを使用してSOAP-HTTPバインドのWebサービス構築方法について調査してみる.
SOAPエンジンであるAXISをインストールし,サンプルを動かしてみた.
システムの動作を確認,調査するために,入出力を押えることは重要である.TCPMonはAXISとともに配布されるSOAP電文を中継,送受信するツールであり,Webサービスを提供するシステムの入出力を押えるのに便利であるので,これを試してみた.
やはり何事も動くものが無くては楽しめない,ということで,JWSを使用して簡単なWebサービスを構築し,それにリクエストするクライアントを作成してみた.
JWSを使用してWebサービスを提供できるようになったので,次にWSDDを記述してみる.
SOAPにてJavaオブジェクトを送受信する場合は,XML文書とJavaオブジェクトを相互に変換する(シリアライズ,デシリアライズする)必要がある.今回はBeanのシリアライズ,デシリアライズの方法を調査してみた.
シリアライザとデシリアライザは,自作することもできるらしいので,試しに作ってみた.
今まで見てきた例は,SOAP RPCと呼ばれ,Webサービス呼び出しがコード上では単なるメソッド呼び出しに見えるものであった.今回はSOAP Messagingと呼ばれる,送受信XML電文をコード上でDOMのDocumentオブジェクトとして扱う例を見てみる.
SOAP Messagingのメッセージ送受信の方法が分かったので,今度は送受信するメッセージの解析や作成方法を調査してみた.
AXISは,ハンドラとハンドラチェインという概念を核としたアーキテクチャをとっており,これによってWebサービスのモジュール化が可能となり,拡張性を維持している.
AXISにおけるSOAPHeaderの扱いを調査,確認してみた.さらに,SOAPHeaderを送信するにあたって,前頁のハンドラチェイン設定をクライントサイドにも適用してみた.

