gpt4 book ai didi

java - SOAP WS - 同一服务的多个不同安装的单个客户端

转载 作者:行者123 更新时间:2023-11-29 03:29:05 25 4
gpt4 key购买 nike

动机

我正在构建一个命令行实用程序,它允许用户从远程计算机操作服务器上的用户帐户。为此,服务器提供了一个 SOAP WS API。

问题

如果我使用 wsimport 工具从 WSDL 文件生成客户端代码,应用程序将固定为单个服务器安装(服务器的 IP 地址在多个位置的代码中固定)。

我需要应用程序允许用户使用任何服务器安装。他们应该只在应用程序启动时被要求提供目标服务器的 IP 地址。

实现此目标的最佳/正确方法是什么?

最佳答案

生成wsdl代理后。这是一个带注释的文件@WebServiceClient.

我为以下 url(wsdl 位置)生成代理

http://192.168.1.185:10530/service?wsdl

在类的构造函数中,您可以传递由 setter 字符串或文件或从数据库读取的任何数据设置的所需 url。

寻找带有注释@WebServiceClient 的文件(包含 getBasicHttpBinding 方法)然后添加以下内容。在使用它之前设置所需的 url 并调用 getBasichttpBinding....

private static String serviceUrl = "";

public static void setUrl(String url){
serviceUrl = url;
}

public ServiceClient(URL wsdlLocation, QName serviceName) {
super(wsdlLocation, serviceName);
}

public ServiceClient() {
super(serviceUrl, new QName("http://tempuri.org/", "Service"));
}

关于java - SOAP WS - 同一服务的多个不同安装的单个客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19333275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com