同じクライアントを使用して同一のWebサービスにアクセスします
質問
私はいくつかのWebサービスを持っており、WS-Importを使用してWebクライアントを作成しています。
クライアントを作成するとき、私はこの行を持っています:
MyServiceService service = new MyServiceService();
そのまま正常に機能します。
私は別のサーバーで同じWebサービスを実行しているので、同じクライアントを使用してそれらにアクセスできるかどうか疑問に思っていました。クライアントのWSDL URLを変更することは可能ですか? EclipseのCtrl-Spaceは、URL Arg0およびQName Arg1であるMyServiceserviceに入ることができる2つのパラメーターを提供します。これは私が探しているものですか?そして、もしそうなら、私はJavadocが関連付けられていなかったので、Googleでそれを見つけられなかったので、私はQNameに何を入れるべきですか
おかげで、KRT_MALTA
解決
はい、これを行うことができます。疑わしいとおり、コンストラクターを使用する必要があります この署名 それはあなたのサービスクラスで生成されます。ご覧のとおり、QNameとURLの2つの引数が必要です。
QNameは、判断するのが少し難しいです。サービスクラスのNO-ARGコンストラクター(およびクラスの@Service属性)の生成されたソースコードを確認する必要があります。これを行うと、No-ARGコンストラクターが使用するQNameを把握できるはずです。同じ値でQNameを作成するだけで、それを使用してください。
URLは簡単です。アクセスするWSDL URLを使用してください。
所属していません StackOverflow