いろいろと実験してみたところ、どうもサーバーにはSOAPメッセージはきちんと送られ、Axis2内の処理の中には入っているものの、その中でエラーが起こっている模様。もっと具体的には、SOAPからオブジェクトに変換するところでエラーが起きているようだ。
Axis2のサーバー側では、SOAPからオブジェクトに変換された後、
前段階、つまりSOAPメッセージは、最初Axis2内部のロジックを通り、
では、実際にparseメソッドを見てみると、ここで、"Unexpected sublement "というエラーメッセージとExceptionを生成していることがわかる。どうやら、ここでSOAP(XML)のparseに失敗していたようだ。
というわけで、デバッガを使い、送られてきたSOAPメッセージをチェックしてみると、問題のエレメントには何もはいっていないことが判明。問題のエレメントはオブジェクトの入れ子になっていたため、単純なNullPointerExceptionが発生し、それがparse Errorになり、わけのわからないメッセージなっていたようだ。
というわけで、クライアント側のプログラムで、nullとなっていたところをきちんと埋めたら、、、正常に動いた。
0 コメント:
コメントを投稿