我正在尝试使用客户端代码发送 SOAP 请求,该客户端代码使用 wsdl2java 工具为 Eclipse 生成的库,但不断收到此错误:
[错误] 系统无法从地址推断传输信息:http://172.17.4.2:8081/axis2/services/CDMS URL。
该客户端是一种位于“真实”客户端和服务器之间的代理。我从真实客户端的 SOAP 消息的 wsa:To 字段中获取了 URL,并使用它来创建到服务器的连接。
对于寻找可能的错误来源,我很迷茫,有人可以提示吗?我不确定我可以在这里提供哪些可能有用的信息,所以请告诉我应该提供哪些其他错误消息或配置文件提取物来帮助您帮助我:)
谢谢...
更新:
我进行了更多试验,如果我将 URL 字符串硬编码到客户端存根,而不是从另一条消息中获取它,则请求成功发送:
ConfigurationContext cc = ConfigurationContextFactory.createConfigurationContextFromFileSystem("/home/me/axis2-1.6.2/repository", "/home/me/axis2-1.6.2/conf/axis2.xml");
CDMSStub stub = new CDMSStub(cc, "http://172.17.4.2:8081/axis2/services/CDMS");
我不明白为什么,因为我提供的字符串与硬编码的字符串具有完全相同的值/内容....