ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:39.38KB ,
资源ID:3139747      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3139747.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(流程定义语言.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

流程定义语言.docx

1、流程定义语言一 JPDL流程定义1.1 process-definition(流程定义)流程定义的根节点,是所有节点的父节点名称类型数量描述name属性可选的流程的名称。swimlane元素0.*流程中使用的泳道。泳道表示流程角色,它们被用于任务分配。start-state元素0.1流程起始状态。注意,没有起始状态的流程是合法的,但是不能被执行。end-state|state|node|task-node|process-state|super-state|fork|join|decision元素0.*流程定义的节点。注意,没有节点的流程是合法的,但是不能被执行。event元素0.*作为一个容

2、器服务于动作的流程事件。action|script|create-timer|cancel-timer元素0.*全局定义的的动作,可以在事件和转换中引用。注意,为了被引用,这些动作必须指定名称。task元素0.*全局定义的任务,可以在动作中使用。exception-handler元素0.*一个异常处理器列表,用于这个流程定义中的委托类所抛出的所有异常。1.2 node(自动节点)这种节点和State相反,也称自动节点。当业务程序实例执行到这个节点,不会停止执行。而是会继续往下执行。如果该节点存在多个离开转向。那么,就会执行其中的第一个离开转向,在Node状态中,不需要外部参与者的参与,业务流程

3、的这个部分是自动的、即时完成的。名称类型数量描述action|script|create-timer|cancel-timer事件1用于表示这个节点行为的定制动作。普通节点元素请参考普通节点元素。1.3 start-state(开始状态)start-state是我们整个流程的开始节点,所有的流程实例从这里开始。 名称类型数量描述Name属性可选的节点的名称。Task元素0.1起始一个流程实例的任务,或者用来捕获流程发起者Event元素0.*支持的事件类型:node-leave。transition元素0.*离开转换,每个离开节点的转换必须有一个不同的名称。exception-handler元素

4、0.*一个异常处理器列表,用于这个流程节点中的委托类所抛出的所有异常。1.4 end-state(结束节点)对于每一个流程定义都会有一个结束节点,与开始节点对应名称类型数量描述Name属性必需的结束状态的名称。event元素0.*支持的事件类型:node-enter。exception-handler元素0.*一个异常处理器列表,用于这个流程节点中的委托类所抛出的所有异常。1.5 state(状态) State节点也叫手工节点,进入到这种节点,整个流程的执行就会中断。直到系统外参与者发起继续执行的命令,即调用signal或end方法,业务程序实例的执行才能够继续下去。名称类型数量描述name属

5、性必需的节点的名称。async属性true|false,默认是false如果设置为true,这个节点将会异步执行。请参考”异步执行”章节。transition元素0.*离开转换。每个离开节点的转换必须有一个不同的名称,最多只允许所有离开转换中的一个没有名称。第一个转换被指定为默认转换,当离开节点而没有指定转换时,默认转换发生。event元素0.*支持的事件类型:node-enter|node-leave。exception-handler元素0.*一个异常处理器列表,用于这个流程节点中的委托类所抛出的所有异常。timer元素0.*指定一个定时器,用来监视节点中的一个执行所持续的时间。1.6 t

6、ask-node (任务节点)其性质和node节点一样,在没有task的时候,也都是自动执行,不等待。task-node被归类为一个等待节点,是指在task-node中的task列表中的task没有全部执行完之前,它会一直等待。Task可以在task-node节点下定义,也可以挂在process-definition节点下。最普遍的方式是在task-node节点下定义一个或多个任务。默认情况下,流程在task-node节点会处于等待状态,直到所有的任务被执行完毕。Task的执行是按顺序执行的,任务都完成后,token仍然不会指向后面的节点;需要自己手动调用processInstance.sig

7、nal()才会驱动流程到下面的节点。名称类型数量描述signal属性可选的unsynchronized|never|first|first-wait|last|last-wait,默认是last。signal指定了任务的完成对流程执行继续的影响。create-tasks属性可选的yes|no|true|false,默认是true。当需要在运行时通过计算来决定哪个任务将被创建时,可以设置为false,如果这样的话,在node-enter事件上加一个动作,在动作中创建任务,并且把create-tasks设置为false。end-tasks属性可选的yes|no|true|false,默认是fals

8、e。如果设置end-tasks为true,在离开节点时,所有打开的任务将被结束。task元素0.*当执行到达本节点时所应被创建的任务。普通节点元素请参考普通节点元素。为了帮助读者理解task-node节点的signal属性,这里举例如下:对于这样的流程定义: a) 这里没有定义signal属性的值,这就表明当节点中的三个任务都完成后,流程才进入后面的节点b) 当表明token不会在本节点停留,而是直接到后面的节点c) 当表明三个任务都完成后,token仍然不会指向后面的节点;需要自己手动调用processInstance.signal()才会驱动流程到下面的节点d) 当表明只要有一个任务完成后

9、,token就指向后面的节点e) 当表明当第一个任务实例完成时继续执行;当在a节点入口处没有任务创建时,token在a任务节点处等待,直到任务被创建或完成。f) 当时,这是默认值,和不设置signal属性的情况相同。g) 当时,当最后一个任务实例完成时候继续执行下去。 当a这个任务节点没有任务被建立时,任务节点等待直到任务被建立。1.7 fork(分支)一个fork把一个执行路线分割成多个执行路线. 默认分支的行为是为每个离开分支转换建立一个子令牌,在令牌要到达的分支之间建立一个父母-子女关系名称类型数量描述name属性必需的节点的名称。async属性true|false,默认是false如果

10、设置为true,这个节点将会异步执行。请参考”异步执行”章节。transition元素0.*离开转换。每个离开节点的转换必须有一个不同的名称,最多只允许所有离开转换中的一个没有名称。第一个转换被指定为默认转换,当离开节点而没有指定转换时,默认转换发生。event元素0.*支持的事件类型:node-enter|node-leave。exception-handler元素0.*一个异常处理器列表,用于这个流程节点中的委托类所抛出的所有异常。timer元素0.*指定一个定时器,用来监视节点中的一个执行所持续的时间。1.8 join(联合)默认联合(join)假设所有来自同一个父母的子令牌联合,当在上

11、使用fork(分支)这个情形就出现了并且所有令牌分支建立,并且到达同一个联合(join)。当全部令牌都进入联合的时候联合就结束了, 然后联合将检查父母-子女, 当所有兄弟令牌到达联合(join),父母令牌将传播(唯一的)离开转换,当还有兄弟令牌活动时,联合的行为将作为等待状态。名称类型数量描述name属性必需的节点的名称。async属性true|false,默认是false如果设置为true,这个节点将会异步执行。transition元素0.*离开转换。每个离开节点的转换必须有一个不同的名称,最多只允许所有离开转换中的一个没有名称。第一个转换被指定为默认转换,当离开节点而没有指定转换时,默认转

12、换发生。event元素0.*支持的事件类型:node-enter|node-leave。exception-handler元素0.*一个异常处理器列表,用于这个流程节点中的委托类所抛出的所有异常。timer元素0.*指定一个定时器,用来监视节点中的一个执行所持续的时间。对于Join节点,我们知道默认是要等到所有分支都到了流程才能往下继续走,要改变这一情况,我们可以通过给该节点加Action的方法改变该Join节点的Discriminator,就可以使只要有一个分支到达流程就可以继续执行的效果了1.9 decision(决策)一个decision用以决定在多个执行路径中哪个才可以被执行。如果你是

13、一个程序员,把它可以理解成switch case结构即可,一个decision能够具有许多离开的transition。 名称类型数量描述handler元素要么指定“handler”元素,或者在转换上指定条件。一个org.jbpm.jpdl.Def.DecisionHandler的实现名称。transition元素0.*离开转换。决策的离开转换可以被扩展为拥有一个条件,决策会查找条件计算为true的第一个转换,没有条件的转换被认为计算为true(为了建模“otherwise”分支)。请参考condition元素。普通节点元素请参考普通节点元素。Handler所指定的DecisionHandler的实现类里的decide方法返回一个字符串,表示要执行哪个transition1.10 transition(转换)转换用来指定节

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1