我使用JBOSS FUSE ESB代理大量的Web服务。
使用基于内容的路由器来确定真实的Web服务。但是,如果在后端部署了新服务。我被迫更改代理详细信息(WSDL)并公开接口。
导致客户端再次重新生成客户端代码。
是否有任何其他解决方案可以让我在设计级别优化此问题。
答案 0 :(得分:1)
对此有一些一般性的想法,但我需要更多的细节来提供一些可靠的建议。
您正在代理服务,因此您不会将服务抽象出来。您通过FuseESB上的服务直接向外部公开服务。
通常,您将使用ESB将提供者和消费者彼此远离。这意味着您不会直接公开/代理服务。例如,您将创建通用操作和数据结构。这将允许您将通用接口映射到您提供的Web服务实现。
另一种方法是对不同的WSDL进行版本控制,从而拥有不同版本的服务。这将允许您让客户端使用旧的WSDL,然后逐位迁移它们。