[计算机]BPEL简介课件

PPT
  • 阅读 35 次
  • 下载 0 次
  • 页数 30 页
  • 大小 463.020 KB
  • 2022-12-01 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档15.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
[计算机]BPEL简介课件
可在后台配置第一页与第二页中间广告代码
[计算机]BPEL简介课件
可在后台配置第二页与第三页中间广告代码
[计算机]BPEL简介课件
可在后台配置第三页与第四页中间广告代码
[计算机]BPEL简介课件
[计算机]BPEL简介课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 30
  • 收藏
  • 违规举报
  • © 版权认领
下载文档15.00 元 加入VIP免费下载
文本内容

【文档说明】[计算机]BPEL简介课件.ppt,共(30)页,463.020 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-77133.html

以下为本文档部分文字说明:

BPEL简介BPEL简介◼BPEL(BusinessProcessExecutionLanguage,业务流程执行语言),是一种使用Web服务定义和执行业务流程的语言。◼BPEL是专门为整合WebService而制定的一项规范标准。◼BPEL的作用是将一组现

有的服务组合起来,从而定义一个新的Web服务。因此,BPEL基本上是一种实现此种组合的语言,组合后的服务的接口也被描述为WSDL的portType集合。BPEL结构◼partnerLinks:合作伙伴

链接◼variables:变量定义◼correlationSets:相关集定义◼faultHandlers:故障处理程序◼compensationHandlers:补偿处理程序◼eventHandlers:事件

处理程序◼activity:流程主体合作伙伴链接◼PartnerLinkType:伙伴链接类型❑为了描述两个服务之间的会话关系,伙伴链接类型定义了会话中每个服务所扮演的“角色”,并且指定了每个角色所提供的portType。伙伴链接类型定义文

档可以是独立于任一个服务的WSDL文档的单独构件,也可以被放在定义portType的WSDL文档中,这些portType也被用来定义不同的角色。但是,必须注意的是PartnerLinkType不是在BPEL文件中定义的,而是在W

SDL文件中定义的。合作伙伴链接◼PartnerLink:伙伴链接❑与业务流程交互的服务被描述成伙伴链接。每个伙伴链接由partnerLinkType来描述。每个伙伴链接都被命名,这个名称用于与这个伙伴的所有服务交互。❑每个合

作伙伴链接可以拥有一个或两个角色。属性myRole指出了业务流程本身的角色,而属性partnerRole指出了伙伴的角色。通常同步请求/响应操作仅能指定一个角色;对于异步操作,它指定两个角色。变量定义◼业务

流程指定了涉及伙伴之间消息交换的有状态交互。业务流程的状态不仅包括被交换的消息,而且还包括用于业务逻辑和构造发送给伙伴的消息的中间数据,这些中间数据可以通过变量来存储。◼每个变量的类型可以是WSDL消息类型、XMLSchema简单类型或XMLSchema元素

。相关集定义◼BPEL提供了声明性机制,以指定服务实例中相关联的操作组。一组相关标记可定义为相关联的组中所有消息共享的一组特性。这样的一组特性称为相关集。每个关联集都在一个作用域中进行声明并属于该作用域。在流程开始时,全局关联集处于未初始化的状态。在其所属的作用域

的执行开始时,本地关联集处于未初始化的状态。相关集在其语义上类似于延迟绑定的常数。相关集的绑定由特别标记的消息发送或接收操作来触发。相关集在其所属的作用域的生存期中只能初始化一次。在初始化之后,它的值就可被认为是业务流

程实例的标识的别名。◼相关集的名称用在invoke、receive和reply活动中,也用在pick活动的onMessage分支中,同时还用在事件处理程序的onMessage形式中。故障处理程序◼故障处理是因发生故障而切换到撤销发生故障的作用域中的部分或不成功的工作。故障处理程序提供了定义一组自

定义的故障处理活动的方法,句法上定义为catch活动。定义的每个catch活动能拦截某种特定的故障(由全局惟一的故障名和有与该故障相关联的数据的变量来定义)。如果没有故障名,那么catch将拦截全部有适合类型的故障数据的故障。使用catc

h处理程序中的faultVariable属性来指定故障变量。◼对invoke活动的故障响应是故障的来源之一,根据WSDL操作中的故障定义,该故障有显式给出的名称和数据部分。程序化地抛出throw活动是故障的另一个来源,它也有显式给出的名称和数据。补偿处理程序◼通过补偿处理程序,作用域可以描述一部

分通过应用程序定义的方式可撤销的行为。有补偿处理程序的作用域可不受约束任意深地被嵌套。◼补偿处理程序仅仅是补偿活动的包装。在许多情况下,补偿处理程序需要接收当前状态的数据并返回关于补偿结果的数据。◼补偿处理程序的调用方法是使用compe

nsate活动。事件处理程序◼整个流程以及每个作用域可以与一组在相应的事件发生时并发调用事件处理程序相关联。在事件处理程序中进行任何类型的活动,但是不允许使用<compensate/>调用补偿处理程序。◼有两

种类型的事件:与WSDL中请求/响应或单向操作对应的传入消息;用户设置的时间过后发出的警报。流程主体◼由一系列的基本活动和结果活动组成◼BPEL语言的基本单位是活动,其活动按作用可分为如下几类:❑基本活动:实现基本功能❑结构活动:控制流程结构

❑特殊活动❑故障处理:BPEL2.0中将故障处理单独归类基本活动◼基本活动是与外界进行交互最简单的形式。它们是无序的个别步骤,与服务进行交互、操作、传输数据或者处理异常等。◼包括如下:❑流程用于和外界进行交互的基本活动:receive、inv

oke、reply;❑流程用于传输数据的基本活动:assign;❑通过throw活动发出故障信号;❑通过terminate活动放弃所有流程实例的执行;❑通过wait活动使流程等待一段时间或到达某个截止期限后再执行;❑通过e

mpty活动不执行任何的动作;❑通过compensate活动做一些补偿动作,通常需要和scope联合使用。◼主要基本活动负责调用服务receivereplyinvokeassignwaitemptyexit结构活动◼结构化的活动规定了一组活动发生的顺序。他们描述了业务流程是怎样

通过把它执行的基本活动组成结构而被创建的,这些结构表达了涉及业务协议的流程实例间的控制形式、数据流程、故障和外部事件的处理以及消息交换的协调。◼包括如下:❑活动间一般的顺序控制由sequence、switch和while来提供;❑活动间的并发和同步由flow来提

供;❑基于外部事件的不确定的选择由pick来提供;◼结构化的活动可以被任意的嵌套和组合。◼主要结构活动repeateUntilwifpickforEachsequenceflowwhile特殊活动(S

cope活动)◼Scope活动为嵌套在其中的活动提供故障处理功能和补偿处理功能。scope可以提供故障处理程序、补偿处理程序、数据变量和相关集。◼每个Scope有一个定义它的正常行为的主要活动。该主要活动可

以是一个复杂的结构化的活动,其中有任意深度的许多嵌套的活动。所有的嵌套的活动都共享该Scope。jPDL和BPEL比较◼流程结构定义❑jPDL中定义了一些基于有向图的节点和变换,通过这些节点和变换来实现流程的定义。而在BPEL中有一些基于

XML元素的结构化活动,通过这些活动来实现流程的结构定义。◼数据处理❑jPDL中的变量是基于POJO(PlainOldJavaObject)定义的,流程中需要进行处理处理的数据可以通过ContextInstance在外部类中调用。BPEL中变量是基于XML结构,可以通过assign

活动来进行操作。◼和流程的交互方式❑jBPM提供了一组API,通过调用这些API中的方法允许客户端代码和流程实例的直接交互。BPEL提供了Web服务的接口,客户端通过这些接口来实现和流程实例的间接交互。◼服务的调用❑jPDL流

程通过actionhandler来实现和外部服务的交互。在BPEL中,通过invoke等活动来实现。BPEL2.0的改动◼《BPEL开发手册》所介绍的是BPEL1.1版本,BPEL2.0中对活动有了一些改动和添加,下面是BPEL2.0图形化编辑插件的截图。通

过ActiveBPEL进行开发◼ActiveBPEL:提供流程编辑器和流程执行引擎◼如右图:⚫bpel中存放*.bpel流程描述文件。⚫deploy中存放用于流程部署的pdd和bpr文件。⚫sample-data和test文件夹存放用于流程测试的数据和BUnit。⚫schema存放预定义

的数据类型文件*.xsd。⚫wsdl存放流程所调用服务的描述文件wsdl。引入wsdl文件◼引入wsdl文件——从服务提供方处获得服务的wsdl描述并放入wsdl文件夹。◼引入wsdl文件后,在Interfaces一栏中可以看到wsdl中描述的Partn

erLinkTypes和Porttypes。创建BPEL流程◼右键点击bpel文件夹,通过New->BPELProcess新建一个BPEL文件。编辑BPEL流程◼可以从PortType中将服务托拽到BP

EL编辑器中,从而添加一个流程。◼若该服务没有定义PartnerLinkTypes,编辑器会要求你创建一个。◼可以将创建的PartnerLinkTypes直接添加到相应的服务描述文件wsdl中。PartenerLinkPartenerLin

kPartenerLinkBPELWSDL◆SendSalesOrderNotification●RetailerCallbackPortType◆customerOrder◆cancelOrder●OrderM

anagerPortType(partnerLinkType)OrderingPLT※OrderPlacerRetailerCallbackPortType※OrderingSystemOrderManagerPortTyperole※PortType●operation◆(partnerLin

k)OrderManagerpartnerLinkTypeOrderingPLTmyRoleOrderPlacerpartnerRoleOrderingSystem(invoke)CreateSalesOrderpartnerLinkOrde

rManageroperationcustomerOrderVariable……数据传递◼在assign活动中,BPEL可以通过XPath语言进行数据传递。◼使用XPath语言必须将流程的CreateXPath属性设为Yes,其默认值为No。生成pdd文件◼右键点击bpel文件,

New->DeploymentDiscriptor,生成同名pdd文件,并放置在deploy文件夹中。生成pdd文件◼pdd文件需要修改服务连接部分。

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?