bpmn到bpel映射的例子(翻译二)

来源:互联网 发布:优秀的女人知乎 编辑:程序博客网 时间:2024/06/06 07:11
 
建模工具在生成bpel文件时,需要定义一些参数,像targetNamespace,wsdl文件的位置,还有一些其他的参数,包括操作环境,来确保bpel能过正常的执行。这些信息是基于建模工具环境变量的设置。
   Partnerlink元素的定义在process定义之前,这些元素的信息可以在bpmn流程中task的属性中找到。,当task为服务类型,实现为web服务的时候将定义Participant,Participant和它的属性可以映射到parterLink元素。
表2展现了web服务的属性到ParterLink的映射。可以用来定义bpel文档的头部分。
生成的bpel中partnerlink代码如表3所示
variable元素定义也先于流程的定义。可以由bpmn图中关于流程的属性得到,建模的工具应该允许建模人员定义这些属性。属性中“structure”类型将被映射的message中,message是在wsdl中定义,在bpel文件中定义variable元素,引用message元素。
表4展现了怎样由流程的属性到variable,message的映射,分别是在bpel文件和wsdl文件中
表5展现的bpel variable元素的代码定义
表6展现了wsdl中message元素的代码定义。
在图2中,除了4,所有的Sequence Flow都可以映射到bpel的link元素。另外,流程还需要三个link 元素来表现不是Sequence Flow的元素。这个例外将在下面的章节提到。当流程flow元素定义时,link定义将先于流程的定义,表7展现了bpel中link元素的代码定义。
Link的名称由建模工具自动生成。
3 流程的开始
  通过一个message开始事件触发预定旅行的请求消息,一个流程也就开始运行。当收到请求后,将会检查信用卡是否有效,正如在图2中看到的,“车参考 credit card”活动有一个error intermediate event的分支。这个事件用来控制不正确的信用卡号码。Fault handling将在下面的章节介绍。
接受消息事件是用来初始化流程的,可以映射到bpel中的receive元素。表8显示了接受消息事件到receive的映射。
原创粉丝点击