|  | WS-Coordination 实例
教程 “Configure and invoke Web services for WebSphere Customer Center”(developerWorks,2007 年 10 月)中提供了一个非常基本的例子,这个例子涉及 MDM Server 和 WS-AT 的使用。这个例子没有涉及 WebSphere Process Server 的使用。对于本教程中的分布式环境,服务器之间传播一个协调上下文,从而确保 WS-AT 事务在相同的事务上下文中运行。本教程演示这种使用 WebSphere Process Server 传播上下文的功能;在下一篇教程中,当在一个更复杂的工作流中建立跨多个服务提供者的长时间运行的业务流程时,这种方法的重要性将变得更加明显。
一个服务器(客户机)将运行一个 Web 服务客户机,另一个服务器将运行 WebSphere Process Server,还有一个服务器将托管 IBM Master Data Management Server(Web 服务)。
这里将创建一个(全局)事务,该事务包含一些 MDM Web 服务调用。WebSphere Process Server 将收到来自客户机的 Web 服务调用,并将这些调用的接口映射到 MDM Web 服务接口,然后调用适当的 MDM Web 服务。每个服务器上的 WS-AT 协调器负责在服务器之间协调原子事务,并确保全局事务中的所有功能作为单个的工作单元执行。图 3 描绘了这种设置:
图 3. WS-Coordination 上下文通过 WebSphere Process Server 从服务使用者传播到服务提供者
当客户机开始全局事务时,它调用本地协调器创建上下文,包括激活 ID、协调类型和对客户机协调器的注册服务的端点引用。创建的协调上下文被作为 SOAP 请求头部的一部分发送到 WebSphere Process Server 模块。WebSphere Process Server 模块传递收到的来自客户机的上下文作为输入,并调用协调器。WebSphere Process Server 的协调器创建上下文,其中包含与从客户机收到的上下???相同的激活 ID 和协调类型。WebSphere Process Server 模块确定协调协议,然后在 WebSphere Process Server 的协调器上注册协调协议。协调器的协议服务还交换 WebSphere Process Server 模块和客户机的端点引用。最后,WebSphere Process Server 的协调器将注册转发到客户机的注册服务器,以交换端点引用,并建立这些端点引用之间的逻辑连接。WebSphere Process Server 通过类似的过程将事务上下文传播到 MDM 服务器。
在本教程中,您将设置 图 3 描绘的分布式环境,然后调用一个 MDM Server 服务(Web 服务)。您将在这个特定拓扑的事务上下文中执行这个服务。事务的成功和失败/回滚将通过使用示例客户端应用程序中设置的一个 JTA 事务来手工模拟。如果全局事务中任意时间点上发生失败,这将显示所有 WS-AT 协调器将回滚在此之前采取的任何行动。
|  |
|