java - 在运行时更改 WebService 端点地址

标签 java web-services netbeans

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

请帮我解决这个问题!

最佳答案

有两种方式:

1) 将port 转换为BindingProvider 并指定BindingProvider.ENDPOINT_ADDRESS_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 作为参数生成的服务构造函数。

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...;

关于java - 在运行时更改 WebService 端点地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2046790/

相关文章:

java - 使用 Selenium Webdriver 滚动时获取 AJAX 内容加载

java - java中在main方法之前声明一个类

batch-file - 在 NetBeans 中保存后运行 bat 文件

java - 如何将库导入 NetBeans 中的 Java 项目?

线段Java角

java - 如何从字符串中打印随机字符?

java - 这是使用 java 为桌面应用程序提供日历功能的最简单的 API

ios - 如何在 Objective c 中使用 AES 加密发送 CommonCrypto POST 请求?

java - 无法发送 ViaPost 到 url 读取超时

wcf - 严格版本化的 WCF 服务命名空间是否应该是契约(Contract)唯一的?