火龙果软件-BPEL4WS详解.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
火龙果软件-BPEL4WS详解

throw throw构造从业务流程中生成故障。 使用throw发出内部故障。每个故障需要有一个全局惟一的QName,还可选提供数据的变量。故障处理程序可以使用这种数据,来分析和处理该故障并植入需被发送到其他服务的所有故障消息。 throw faultName=qname faultVariable=ncname? standard-attributes standard-elements /throw terminate terminate可以用于立即终止该terminate活动在其中运行的业务流程实例。 所有当前正在运行的活动必须尽可能快地终止,而没有任何故障处理或补偿行为。 terminate standard-attributes standard-elements /terminate terminate语义 ?Σ°s?? wait wait构造允许等待一段给定的时间或等到某一时刻。 必须确切地指定wait中一个到期条件。 wait (for=duration-expr | until=deadline-expr) standard-attributes standard-elements /wait wait语义 b:= σ(s, wait, for)?b=true?Σ°s?Σ°s b:= σ(s, wait, for)?b=false?Σ°s?Σ b:= σ(s, wait, until)?b=true?Σ°s?Σ b:= σ(s, wait, until)? b=false ?Σ°s?Σ°s empty与语义 empty构造允许在业务流程中插入“no-op”指令。 empty可用于并行活动的同步。 empty standard-attributes standard-elements /empty Empty语义 ?Σ°s?Σ 结构化活动 结构化的活动规定了一组活动发生的顺序,描述了创建业务流程的基本活动组成的结构,这些结构表达了涉及业务协议的流程实例间的控制形式、数据流程、故障和外部事件的处理以及消息交换的协调。 BPEL的结构化活动包括: 顺序控制由sequence、switch和while组成; 活动之间的并发和同步由flow组成; 基于外部事件的不确定的选择由pick组成。 递归地使用结构化的活动。 sequence sequence构造定义一组按顺序先后执行的活动。 执行顺序是sequence元素中被列出活动的先后顺序。 当sequence中的最后一个活动完成后,该sequence活动也就完成了。 sequence standard-attributes standard-elements activity+ /sequence sequence语义 w:=λ(s, sequence\*)?w = nil ?Σ°s?Σ w:=λ(s, sequence\*)??(w = nil) ?Σ°s?Σ°ψ(s, sequence\*) °δ(s, sequence\*) switch switch构造允许从一组分支中只选择一个活动分支。 switch由case元素定义的一个或多个条件分支的有序列表组成,后面可跟也可以不跟一个otherwise分支。 以case分支的出现顺序检查,第一个条件是true的分支被选择并被作为被执行的活动。如果有条件的分支都未被选择,那么otherwise分支将被选择。 switch standard-attributes standard-elements case condition=bool-expr+ activity /case otherwise? activity /otherwise /switch switch语义 w:= δ(s, switch\case)? ? (w = nil) ?b:= σ(w, condition)?b=true ?Σ°s?Σ°λ(w, case\*) w:= δ(s, switch\case)? ? (w = nil) ? b:= σ(w, condition)? b=false ?Σ°s?Σ°ψ(s, switch\case\*) switch语义 w:= δ(s, switch\case)? w = nil? z:=λ(w, switch\otherwise\*)? ?(z=nil) ? Σ°s?Σ°λ(s, switch\otherwise\*) w:= δ(s, switch\case)? w = nil? z:=λ(w, switch\otherwise\*)? z=n

文档评论(0)

1520520 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档