wsimportを使用してクライアント Web サービス コードを生成しています。(以下の wsdl コードの一部を参照)。
コード生成が完了すると、メソッドが定義されていない空の TokenRequest クラスが取得されます。一方、TokenResponse クラスにはいくつかのメソッドが定義されており、いくつかのセッターといくつかのゲッターがあります。
以下の WSDL の場合、TokenRequest クラスが空なのはなぜですか?
ClientKey、Password、UserKey、UserName の 4 つのセッター メソッドがあると予想していました。現在、これらのパラメーターを設定して、この TokenRequest オブジェクトを受け取るメインの Login メソッドに渡すことができません。
.NET 4.0 でこの Web サービスへの参照を作成しようとしましたが、すべて問題なく動作しました。TokenRequest クラスには、必要な 4 つのパラメーターを受け取るコンストラクターがありました。
何が間違っているのですか?明日は Axis2 を使ってこれをやってみます...
<?xml version="1.0" encoding="utf-8"?>
...
<wsdl:input name="TokenRequest">
**<soap12:header message="i0:TokenRequest_Headers" part="ClientKey" use="literal"/>
<soap12:header message="i0:TokenRequest_Headers" part="Password" use="literal"/>
<soap12:header message="i0:TokenRequest_Headers" part="UserKey" use="literal"/>
<soap12:header message="i0:TokenRequest_Headers" part="UserName" use="literal"/>
<soap12:body use="literal"/>**
</wsdl:input>
<wsdl:output name="TokenResponse">
<soap12:body use="literal"/>
</wsdl:output>
...