- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
BPEL简介
BPEL简介 BPEL简介 BPEL(Business Process Execution Language,业务流程执行语言),是一种使用Web服务定义和执行业务流程的语言。 BPEL是专门为整合Web Service而制定的一项规范标准。 BPEL的作用是将一组现有的服务组合起来,从而定义一个新的Web服务。因此,BPEL基本上是一种实现此种组合的语言,组合后的服务的接口也被描述为WSDL的 portType集合。 BPEL结构 partnerLinks:合作伙伴链接 variables:变量定义 correlationSets:相关集定义 faultHandlers:故障处理程序 compensationHandlers:补偿处理程序 eventHandlers:事件处理程序 activity:流程主体 合作伙伴链接 PartnerLinkType:伙伴链接类型 为了描述两个服务之间的会话关系,伙伴链接类型定义了会话中每个服务所扮演的“角色”,并且指定了每个角色所提供的portType。 伙伴链接类型定义文档可以是独立于任一个服务的WSDL文档的单独构件,也可以被放在定义portType的WSDL文档中,这些portType也被用来定义不同的角色。但是,必须注意的是PartnerLinkType不是在BPEL文件中定义的,而是在WSDL文件中定义的。 合作伙伴链接 PartnerLink:伙伴链接 与业务流程交互的服务被描述成伙伴链接。每个伙伴链接由partnerLinkType来描述。每个伙伴链接都被命名,这个名称用于与这个伙伴的所有服务交互。 每个合作伙伴链接可以拥有一个或两个角色。属性myRole指出了业务流程本身的角色,而属性partnerRole指出了伙伴的角色。通常同步请求/响应操作仅能指定一个角色;对于异步操作,它指定两个角色。 变量定义 业务流程指定了涉及伙伴之间消息交换的有状态交互。业务流程的状态不仅包括被交换的消息,而且还包括用于业务逻辑和构造发送给伙伴的消息的中间数据,这些中间数据可以通过变量来存储。 每个变量的类型可以是WSDL消息类型、XML Schema简单类型或XML Schema元素。 相关集定义 BPEL提供了声明性机制,以指定服务实例中相关联的操作组。一组相关标记可定义为相关联的组中所有消息共享的一组特性。这样的一组特性称为相关集。每个关联集都在一个作用域中进行声明并属于该作用域。在流程开始时,全局关联集处于未初始化的状态。在其所属的作用域的执行开始时,本地关联集处于未初始化的状态。相关集在其语义上类似于延迟绑定的常数。相关集的绑定由特别标记的消息发送或接收操作来触发。相关集在其所属的作用域的生存期中只能初始化一次。在初始化之后,它的值就可被认为是业务流程实例的标识的别名。 相关集的名称用在invoke、receive和reply活动中,也用在pick活动的onMessage分支中,同时还用在事件处理程序的onMessage形式中。 故障处理程序 故障处理是因发生故障而切换到撤销发生故障的作用域中的部分或不成功的工作。故障处理程序提供了定义一组自定义的故障处理活动的方法,句法上定义为catch活动。定义的每个catch活动能拦截某种特定的故障(由全局惟一的故障名和有与该故障相关联的数据的变量来定义)。如果没有故障名,那么catch将拦截全部有适合类型的故障数据的故障。使用catch处理程序中的faultVariable属性来指定故障变量。 对invoke活动的故障响应是故障的来源之一,根据WSDL操作中的故障定义,该故障有显式给出的名称和数据部分。程序化地抛出throw活动是故障的另一个来源,它也有显式给出的名称和数据。 补偿处理程序 通过补偿处理程序,作用域可以描述一部分通过应用程序定义的方式可撤销的行为。有补偿处理程序的作用域可不受约束任意深地被嵌套。 补偿处理程序仅仅是补偿活动的包装。在许多情况下,补偿处理程序需要接收当前状态的数据并返回关于补偿结果的数据。 补偿处理程序的调用方法是使用compensate活动。 事件处理程序 整个流程以及每个作用域可以与一组在相应的事件发生时并发调用事件处理程序相关联。在事件处理程序中进行任何类型的活动,但是不允许使用compensate/调用补偿处理程序。 有两种类型的事件:与WSDL中请求/响应或单向操作对应的传入消息;用户设置的时间过后发出的警报。 流程主体 由一系列的基本活动和结果活动组成 BPEL语言的基本单位是活动,其活动按作用可分为如下几类: 基本活动:实现基本功能 结构活动:控制流程结构 特殊活动 故障处理:BPEL2.0中将故障处理单独归类 基本活动 基本活动是与外界进行交互最简单的形式。它们是无序的个别步
文档评论(0)