.NET ClientでAxis2のWebServiceを利用するときの注意

Axis2でWebServiceを構築し、.NET Clientで利用しようとするときは、引数の書き方に注意しなければいけない。

ひょっとしたら、.NETどうしでもそうなのかもしれないが、未確認なので、一応限定して。

引数に文字列配列(String[ ])をおいた場合、配列と通常の文字列(String)の順番を混ぜて配列してはいけない。

どうやらシリアライズされたときに混ざってしまうためのようで、正しくパラメータを処理することができなくなる。具体的には、配列の中に単体の引数が混ざりこんでしまう。

よくよく考えてみると、シリアライズされる時点で、上記のようなことは起きえる気がする。さらに言えば、WebServiceの利用方法から考えて、あまり複数配列を渡すような仕様はよくないんだろうね。ま、そこのところはご愛敬w

これが原因でちょっと構築上悩んだので、誰かのお役に立てれば...w

ではでは。