Dynamic &引用;便携式;JAX-WS客户端

Dynamic &引用;便携式;JAX-WS客户端,dynamic,wsdl,jax-ws,endpoints,wsimport,Dynamic,Wsdl,Jax Ws,Endpoints,Wsimport,我部署了一个JAX-WS服务,并使用wsimport生成客户机代码。 因为我在localhost上运行wsimport,所以在“localhost”地址上获得了带有binind的客户机代码 但我想在其他计算机上重用这些客户端代码,这些计算机使用公共IP y.y.y.y访问我部署的服务。如何动态使用这些(一次)生成的客户端代码访问我的服务。(服务ip可能会更改…当然。请看下面的图片。以下是相关的代码片段: BindingProvider bp = (BindingProvider) port; b

我部署了一个JAX-WS服务,并使用wsimport生成客户机代码。 因为我在localhost上运行wsimport,所以在“localhost”地址上获得了带有binind的客户机代码

但我想在其他计算机上重用这些客户端代码,这些计算机使用公共IP y.y.y.y访问我部署的服务。如何动态使用这些(一次)生成的客户端代码访问我的服务。(服务ip可能会更改…

当然。请看下面的图片。以下是相关的代码片段:

BindingProvider bp = (BindingProvider) port;
bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://your.wsdl.location");
通常会生成WSDL,然后WS-provider将相关URL插入WSDL。

这在JAX-WS:

Q.如何为请求动态更改Web服务地址?

((BindingProvider)proxy).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "...");