「ポータブル」JAX-WSクライアント
質問
私は、JAX-WSサービスを展開し、クライアントのコードを生成するためにwsimportのを使用しています。 私は、ローカルホスト上でwsimportの実行ので、私は「localhost」をアドレスにbinindでクライアントコードを持っています。
しかし、私は、パブリックIPと私の展開サービスにアクセスし、他のコンピュータ上でこれらのクライアントコードを再利用したいy.y.y.y.どのように動的に(1回)、それらを使用することができ、私のサービスにアクセスするためのクライアントコードを生成しました。 (サービスのIPが変更される可能性があり...)
解決
の Q。どのように私は、要求のために動的にWebサービスのアドレスを変更することができますか?の
((BindingProvider)proxy).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "...");
他のヒント
確かに。 JBossの例のを見てみましょう。ここでは、関連するコードスニペットがあります:
BindingProvider bp = (BindingProvider) port;
bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://your.wsdl.location");
通常WSDLが生成され、therfore WSプロバイダは、WSDLに関連するURLを挿入します。
所属していません StackOverflow