无法使用wsgen生成Web服务客户端

时间:2012-05-10 21:41:17

标签: web-services wsdl wsimport

原帖是here

我有一个由Jax WS 2.1.5创建并作为HTTPS服务公开的第三方Web服务(WSDL: - https://somedomain.com/location/soap/locationfinderservice?wsdl) 我正在尝试使用wsimport创建一个客户端。我使用jdk1.6.0_04进行兼容性(我在之前的帖子中解释了我切换的JDK版本)现在我收到新的错误

 javax.xml.stream.XMLStreamException: Invalid WSDL expected {http://schemas.xmlsoap.org/wsdl/}definitions found   {https://schemas.xmlsoap.org/wsdl/}definitions at (lineLine number = 1

问题是https://schemas.xmlsoap.org/wsdl/不存在。在这种情况下如何生成客户端存根?

1 个答案:

答案 0 :(得分:0)

您可以通过http而不是https访问Wsdl吗?

如果没有,请使用浏览器抓取Wsdl并将其保存在本地,然后稍微修改以更正它。然后将wsimport指向您调整的Wsdl文件。

要应用的略微修改:在文档顶部找到名称空间声明(可能看起来像xmlns:wsdl="https://schemas.xmlsoap.org/wsdl/")并更改为xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/“(注意http而不是https)。