我有一个遗留的BizTalk应用程序,它有大约10个编排和20个基于外部Web服务方案构建的映射。现在这个旧的Web服务将被删除并替换为具有类似(几乎相同)方案的新Web服务。
将旧网络服务中的方案替换为所有业务流程和地图的最佳策略是什么?我可以遍历每个业务流程并手动替换所有消息类型端口和转换。 还有更好的办法吗?
请告知。
确认:我知道构建BizTalk应用程序的更方便的方法是创建内部类型(xsd)并围绕内部类型设计所有编排和映射。然后创建一个映射以从外部(webservice)类型转换为内部,因此在更改网络服务的情况下,只会更改这一个地图。 不幸的是,这不是遗留应用程序构建的方式。
UPD: 问题是旧的Web服务类型被用于许多业务流程和映射。如果我拉出旧的webservice并导入新的webservice,我将在所有这些中得到一个错误。所以我手动更改了所有这些以使用新类型。我正试图找到一种欺骗的方法,而不是改变它们。
答案 0 :(得分:1)
具有类似(几乎相同)方案的新网络服务。
如果情况确实如此,那么你可能不必更换太多东西。只需使用“次要”更改来更新现有的BizTalk应用程序,以适应新服务。
但是,如果在多个位置使用当前架构,则可以使用接收端口上的Map将新消息转换为旧消息。如果根元素和命名空间相同则完全没问题,您需要做的就是在XmlDisassembler中显式设置旧元素。地图始终仅适用于.Net类型。