本文介绍了在运行时更改WebService端点地址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用Netbeans从WSDL url生成Web Sevice客户端代码。
但我无法在运行时使用代码更改端点地址。

I used Netbeans to generate Web Sevice client code from WSDL url.But I can't change endpoint address at run time using code.

请帮我解决这个问题!

推荐答案

你可以通过两种方式做到:

You can do it two ways:

1)演员 port BindingProvider 并指定 BindingProvider.ENDPOINT_ADDRESS_PROPERTY property

1) Cast port to BindingProvider and specify BindingProvider.ENDPOINT_ADDRESS_PROPERTY property

MyService service = new MyService();
MyPort port = service....
BindingProvider bindingProvider = (BindingProvider) port;
bindingProvider.getRequestContext().put(
BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://New.Endpoint/service");

2)您可以调用生成的服务构造函数,该构造函数将WSDL URL作为参数。

2) You can call the generated service constructor which takes WSDL URL as parameter.

QName qname = new QName("http://serviceuri/", "service");
String wsdl = "http://New.Endpoint/service?wsdl";
MyServiec service = new MyServiec(new URL(wsdl), qname);
MyPort port = check...;

这篇关于在运行时更改WebService端点地址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-15 23:09