在Java中更改SOAP接口和弃用Web方法

Dav*_*Rlz 6 java wsdl

我的团队正在使用soap开发java中的服务层和dot-net中的GUI.GUI开发人员不断变得烦恼,因为服务层偶尔会改变Web服务接口.

为了让GUI保持高兴,而不是诋毁原始的网络方法,我们现在正在编写与现有网络方法并存的新方法.由于我们的肥皂界面设计仍在不断完善,因此变得更加混乱,肯定有更好的方法!有什么建议?

此外,有时我们想要弃用Web服务方法 - 是否有用于执行此操作的java注释(将在WSDL中显示的注释)?

谢谢你的任何建议

Sea*_*lly 8

我知道没有这样的弃用注释.这是我通常使用的一般模式:

  • 实现SOAP API,将版本号(v1)放在WSDL名称或路径中
  • 编写值得更新的SOAP api的新(或改进的)应用程序代码
  • 使用v1代码旁边的新版本号(v2)实现全新版本的SOAP api,但由相同的域类支持
  • 更改v1 Web服务的实现以执行迁移,并(尽可能)调用v2服务的相应方法
  • 通知客户端应该开始使用v2而不是v1
  • 等待
  • 如果您处于大型企业环境中,请等待更长时间;-)
  • 一旦没有人再使用v1(使用日志和与用户的对话进行验证),请删除v1界面

只有在Web服务代码与实际应用程序代码之间实现良好分离时,此方法才能正常工作.将Web服务代码视为表示层有助于此.