jBPM-4.0中文开发指南-第5章 实现基本活动 - 编程入门网
rocessFactory. ProcessFactory是一种领域特定语言(DSL),可以嵌入到 Java中,简化流程图形的结构。这个模型也叫做 流畅接口。
jBPM-4.0中文开发指南-第5章 实现基本活动(5)时间:2011-09-24为了了解ProcessFactory的更多细节,可以参考 api文档。 ProcessFactory的另一种选择是创建一个 XML语言和一个XML解析器,来表示流程。 XML解析器可以直接实例化 org.jbpm.pvm.internal.model包中 的类。 这种方式一般都被流程语言选择使用。 初始化活动submit loan request和 wire the money活动是自动活动。 在这个例子中,wire the money活动的 Display实现 使用Java API来把信息输出到控制台上。但是读取器可以想象一个可选的 Activity实现,使用支付流程库的Java API 来实现一个真实的自动支付。 上述流程的一个新执行可以像下面这样启动 ClientExecution execution = processDefinition.startProcessInstance(); 当startExecution方法返回时,submit loan request活动会被执行,执行会位于evaluate活动。 图 5.4. 位于''evaluate''活动的执行 现在,执行处在一个很有趣的点。这里有两个转移从evaluate指向外边。 一个转移叫approve 一个转 移叫reject.像我们上面解释的,WaitState实现会根据执行的signal选择转移。 让我们像这样执 行''approve'' signal: execution.signal("approve"); 这个approve signal会导致执行选择approve转移 它会到达wire money活动。 在wire money活动中,信息会打印到控制台里。 因为Display没有调用execution.waitForSignal() ,也没有调用其他执行传播方法,默认流程行为只会让执行继续,使用向外的转移到达archive活动,这 也是一个WaitState. 图 5.5. 位于''archive''活动的执行 jBPM-4.0中文开发指南-第5章 实现基本活动(6)时间:2011-09-24所以只有当archive到达时,signal("approve")会返回。 另一个signal就像这样: execution.signal("approve"); 将让执行最终到达结束状态。 图 5.6. 位于''end''活动的执行 5.6. 事件 事件位于流程定义中,一系列的EventListener可以进行注册。
事件的目的是让开发者可以为流程添加程序逻辑,不必改变流程图。 这是非常有价值的机制,可以促 进业务分析人员和开发者之间的协作。 业务分析人员负责描述需求。 当他们使用流程图归档那些需求, 开发者可以获得这些图形,让它可执行化。 事件会非常方便,向一个流程中添加技术细节(比如一些数 据库插入操作) 这些都是业务分析人员不感兴趣的东西。 最常用的事件是由执行自动触发的: TODO: 在用户手册中 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |