WSDL中定义的元素
BPEL是构建在Webservice上的一层,在BPEL的定义中同样使用了WSDL的描述,但是BPEL将Binding,Service与WSDL的其它部分分离,这个部分WSDL是支持的,由此做到灵活的绑定配置。在传统WSDL(Types, Message,PortType)类型之外,BPEL的额外定义的XML元素:

<partnerLinkType> 在BPEL2.0中这样解释
<PartnerLinkType>s can be used to represent dependencies between services, regardless of whether a WS-BPEL business process is defined for one or more of those services. Each <partnerLinkType> defines up to two "role" names, and lists the port types that each role must support for the interaction to be carried out successfully.
也就是说<partnerLinkType>定义的是服务之间的依赖关系,在WSDL中的XML一文中我已经说过,PortType其实可以理解为服务接口,每一个PortType对应一个Service只不过,在这里具体服务的实现的部署还没有真正的开始。每一个<partnerLinkType>置多有两个<Role>,每一个<Role>对应一个且必须对应一个PortType,我的理解是这里的Role和业务过程有关,代表一个动作的执行过程,如果在双方的整个交互过程中只需要一方则只定义一条<Role>就可以了,也就是说业务流程的某一个环节,在接受请求以后,必不需要把服务结果返回发送者,而是顺次提交给下一个业务流程,在这个过程中,发起者和接受者之间只需要一条规则保证,并且只有发起方规则保证。最多有两个也很好理解,在一次交互的过程中,至多只能有两方参与.
BPEL2.0中
的代码如下
   <plnk:partnerLinkType name="purchasingLT">

      
<plnk:role name="purchaseService"

         portType
="pos:purchaseOrderPT" />

   
</plnk:partnerLinkType>

注意这里的<partnerLinkType> 必须定义在WSDL的末尾.

Continue... ...