BPEL规范中的role角色概念


BPEL规范中流程的角色概念是通过partnerLink元素来体现的。
partnerLink 元素建立了端口类型的服务(伙伴),将参与业务流程的执行过程。伙伴服务能够担当流程的客户端,负责调用流程服务。作为替代,伙伴服务也能够被流程服务自身所调用。

partnerLink 元素的内容代表了两个合作伙伴之间的通信交换---流程服务是一个合作伙伴;其他服务是另一个合作伙伴。依据通信的种类,流程服务的角色将会变化。例如,被 外部服务所调用的流程服务可能担当 “工单提交流程(TimesheetSubmissionProcess)”的角色。然而,当这个同样的流程服务调用具有发票校验的不同服务的时候,它担 当了不同的角色,或许是“发票客户(InvoiceClient)”。partnerLink 元素因而包含myRole 与 partnerRole 属性,分别设立了流程服务和伙伴服务服务提供者的角色。

为简单起见,myRole 属性用于流程服务被伙伴客户端服务所调用时,因为在这个情况下流程服务担当了服务提供者。partnerRole 属性识别了流程服务所调用的伙伴服务(使伙伴服务成为服务提供者,流程成为客户端角色)。

注 意当期望的流程服务在相同的伙伴服务中担当服务请求者和服务提供者的时候,myRole 与 partnerRole 属性都能够被相同的partnerLink元素所使用。例如,在流程和伙伴服务的异步通信过程中,在伙伴服务回调期间 myRole 的设置显示出流程服务的角色。

你可能感兴趣的:(role)