微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当我尝试在通过 https

如何解决当我尝试在通过 https

我使用 Apache Geronimo Server 进行开发。我需要从通过 https 公开的 WSDL 生成代码。我使用了以下命令:

wsimport -keep -verbose https://devurl:7443/process-engine/soap/CustomerByNumber_v1?wsdl

但我收到此错误

解析 WSDL...

[ERROR] 收到致命警报:protocol_version

未能读取WSDL文档:https://devurl:7443/process-engine/soap/CustomerByNumber_v1?wsdl,因为1)找不到文档; /2) 无法读取文档; 3)文档的根元素不是wsdl:deFinitions。

[ERROR] Failed.noservice=在提供的 WSDL 中找不到 wsdl:service:

需要提供至少一个包含至少一个服务定义的 WSDL。

未能解析 WSDL。

当我们点击 WSDL URL 时,它具有用户名/密码身份验证。

我该如何解决这个问题?

解决方法

错误信息中提到了可能的原因:

  1. 找不到文档;
  2. 无法读取文档;
  3. 文档的根元素不是 d = datetime(43606.4791492245,'ConvertFrom','posixtime') d = datetime 01-Jan-1970 12:06:46

您提到该服务需要用户名/密码身份验证。访问 WSDL 也是这种情况吗?因此,协议可能不一定是问题所在。

执行以下操作:

  • 在浏览器中打开 WSDL URL。您的浏览器不会出现 HTTPS 问题。
  • 如果需要访问 WSDL,请提供用户名/密码。
  • 确保打开的文档是 WSDL 并包含 <wsdl:definitions> 根元素。
  • 使用 .wsdl 扩展名将 WSDL 下载到您的计算机。
  • 对这个文件使用 wsimport:<wsdl:definitions>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。