1

这是客户端类的代码。

try {

        //System.getProperties().put("https.proxyHost", "127.0.0.1");
        //System.getProperties().put("https.proxyPort", "7575");


        String endpoint = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
        Service service = new Service();
        Call call = (Call) service.createCall();
        call.setTargetEndpointAddress(new java.net.URL(endpoint));
        call.setOperationName("AddSMSList"); // Change this to call

        call.addParameter("validation", XMLType.XSD_STRING,
                ParameterMode.IN); // Define Parameters
        call.addParameter("XML", XMLType.XSD_STRING, ParameterMode.IN);
        call.setReturnType(XMLType.XSD_STRING);
        Object[] obj = new Object[] {
                "POWERU-SMS",
                getXML("13627621277", "testtime", "testtype", "testname",
                        "FAIL") }; // Assign value for the parameters
        for (Object i : obj) {
            System.out.println(i.toString());
        }
        String ret = (String) call.invoke(obj); // Call web service
        System.out.println("Result : " + ret);
    } catch (Exception e) {
        e.printStackTrace();
    }

我认为代码本身还可以。问题是连接。服务器在中国。我使用欧洲的代码试图访问服务器。我必须首先启动一个 vpn,然后我需要使用 putty(隧道)设置一个跳转服务器。完成这些后,我可以通过浏览器(代理)访问服务器。但是 java-client 总是超时说

AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode: 
 faultString: java.net.ConnectException: Connection timed out: connect
 faultActor: 
 faultNode: 
 faultDetail: 

有人可以帮助我。我已经为此工作了 1 周。提前致谢

4

4 回答 4

1

我为此苦苦挣扎并找到了解决方案。如果您使用 Websphere,请将端口 8080 添加到虚拟主机的主机别名中。绑定到您尝试访问的应用程序的虚拟主机。希望这可以帮助。

于 2015-11-12T06:22:25.077 回答
0

对我来说,您似乎遇到了防火墙问题而不是代码问题,请从命令行尝试以下操作。首先执行 telnet serverName 端口,如果失败,请致电您的网络管理员并完成跟踪路由,让他坐在另一边,问题将得到解决。

于 2013-06-27T01:25:21.503 回答
0

终于找到了答案。

System.getProperties().put("socksProxyHost", "127.0.0.1");
System.getProperties().put("socksProxyPort", "7575");

而不是添加 https 代理,我应该添加 socks 代理!!!

于 2013-07-01T13:04:04.387 回答
-1

这是代理服务器问题。standalone.xml如果您在 jboss文件中提供代理服务器详细信息,它将得到解决

-Dhttp.proxyHost=<proxy host>-Dhttp.proxyPort=<proxy port number>

于 2014-11-10T10:55:20.897 回答