我遇到了几个基于 SOAP 的 Web 服务的示例,其中自动化工具无法构建有效的客户端。
研究这些示例使我相信服务用来描述自身的 WSDL 与所提供的服务并不完全匹配。也许某处的类型错误,不同的数据结构 - 某事。
我不确定最合适的响应是什么 - 如果我们假设明显的响应(让提供商修复他们的东西)不可用。
我能想到的一些选择:
- 制作固定的 WSDL?
- 破解生成的代码?
- 还有其他选择吗?
- 没有好的选择?
人们有过哪些美好的经历?什么在真实环境中有效?
谢谢
我遇到了几个基于 SOAP 的 Web 服务的示例,其中自动化工具无法构建有效的客户端。
研究这些示例使我相信服务用来描述自身的 WSDL 与所提供的服务并不完全匹配。也许某处的类型错误,不同的数据结构 - 某事。
我不确定最合适的响应是什么 - 如果我们假设明显的响应(让提供商修复他们的东西)不可用。
我能想到的一些选择:
人们有过哪些美好的经历?什么在真实环境中有效?
谢谢
我会尝试第一个选项,制作一个固定的 wsdl。如果这不起作用,那么您可以求助于破解生成的代码。
当然,如果该服务与 WSDL 完全不同,那么您可能对这两个选项不太走运。
如果你幸运的话,还有另一种方法。一些 Web 服务框架支持返回动态生成的 WSDL。
我知道使用 AXIS 1.4 服务,您可以对服务 url + '?WSDL' 执行 GET 并取回动态生成的 WSDL。
例如http://foo.com/service/?WSDL
首先,我会尝试确认该工具是否为 WSDL 创建了正确的绑定。如果 WSDL 是正确的,并且该工具生成了错误的绑定,这不会导致正确的 SOAP 请求/响应处理,那么工具作者可能会提供修复或解决方法。