1

我正在使用JAX-WS. 当我尝试使用 wsimport 生成客户端存根时发布 Web 服务后,我发现了以下问题。

C:\Documents and Settings\vberi\prac_workspace_27_05_2013\WS-Client\src>wsimport
 -s . http://ntlnvn.bmb.com:8080/WS/Greeting?wsdl

解析 WSDL...

[ERROR] file:/C:/Documents%20and%20Settings/vberi/prac_workspace_27_05_2013/WS-C
lient/src/ûs

无法访问

    Failed to parse the `WSDL`.

**我可以通过http://mtlnvn.bmb.com:8080/WS/Greeting?wsdl打开 wsdl **

4

6 回答 6

2

尝试以下步骤:

  1. 转到 wsdl 文件http://www.webservicex.net/geoipservice.asmx?WSDL

  2. 右键另存为(保存到本地系统),给个名字说geoipservice(保存类型默认为xml文档,不要再另存为geoipservice.xml

  3. 现在输入wsimport geoipservice.xmlcmd,你将得到生成的类。

于 2016-04-07T07:52:31.023 回答
1

我正在研究相同的教程并面临相同的问题。是否在这些答案中提出了所有建议。

对我有用的是从 wsimport 命令中删除“ -s . ”部分。

当我运行

wsimport http://localhost:8080/WS/Greeting?wsdl命令,所有文件都没有问题地创建。

希望这对其他人也有效。

于 2015-01-09T10:51:28.523 回答
1

作为使用 JAX-WS 开发 Web 服务的新手,我遇到了类似的问题,并且正在关注本教程

您可以尝试的解决方案是:-

o如其中一个答案所述,更正网址,介于ntlnvnmtlnvn

o确保项目名称不应该包含spaces或特殊字符,如- _ .,不知道它的确切原因,但重命名项目对我有用一次。也许该wsimport命令在处理空格和特殊字符时存在问题。

o最重要的,对我有用的是将构建命令更改为:-

wsimport -keep http://mtlnvn.bmb.com:8080/WS/Greeting?wsdl

于 2014-11-20T12:39:37.110 回答
0

我假设提供的链接只能在您的网络内部访问。

我相信这个问题可能是一个错字。ntlnvn 对抗 mtlnvn。第一个字母不一样。

于 2013-05-29T06:51:04.447 回答
0

我遇到了同样的问题,解决方案是从项目路径中删除所有空格。更改后效果很好。

在您的情况下,路径应该是:

    C:\Documents_and_Settings\vberi\prac_workspace_27_05_2013\WS- Client\src>wsimport...

当然不能那么你必须改变一个项目路径。

问题在这里被提及

于 2015-04-17T09:57:14.930 回答
0

这些是我所做的步骤:

1.- 确保您的连接正常并且 Web 服务可用:在浏览器中打开 wsdl(如您所做的那样)。你也可以用 curl 测试它。

2.- 确保您的配置一切正常:您可以使用另一个 url 测试 wsimport,例如: wsimport -d C:\deleteFolder -verbose -B-XautoNameResolution http://www.xmlme.com/WSAmazonBox.asmx ?WSDL

我的具体问题是我使用的是主机名(来自 Windows 的文件主机)。我更改了 IP 的名称,但遇到了另一个不同的问题(未能读取 WSDL 文档)。也许它会有所帮助。

我做的另一个测试是关闭服务器。当我意识到错误是一样的时,我有点震惊!([...] 无法访问,无法解析 wsdl)。

于 2013-06-17T09:28:51.007 回答