SOAP Web服务的发展

Thi*_*ilo 5 soap wsdl web-services

是否有关于如何处理SOAP Web服务演变的指南/教程?

我可以看到更改现有方法或类型可能不起作用,但我可以添加新方法,复杂类型,枚举值而不破坏现有客户端吗?

kop*_*per 4

基本上你不应该修改现有的WebService,但你可以通过以下方式安全地扩展它:

  • 添加新的服务方法(以及与之相关的任何类型),
  • 在现有消息中添加新的可选元素/属性。

在我们的团队中,我们通过将版本号放入命名空间来处理 WebService 的演变,因此每次我们进行非向后兼容的更改时,我们都会发布具有单独命名空间的新 WebService。作为一种副作用,我们必须维护 2-3 个 Web 服务版本/实例,直到我们的客户自行迁移(我们给他们一些时间,直到我们停止支持旧版本)。