grailsflow 具体地址 http://my.jcatalog.com/grailsflow/login
下面说说,grailsflow的流程处理.本人对工作流不熟悉,加之grailsflow文档有限。
只是粗略的看了下 grailsflow 的代码,如发现有错误,请指正留言。
grailsflow 分以下几个方面
1)流程定义 --就是定义流程要走那些步骤
2)流程处理 --就是定义流程如何来处理流程步骤
3)流程变量--流程需要用到的变量
4)流程执行
1)首先是你定义一个流程类型,比如说我定义请教流程 QJ
grailsflow 就给你创建一个 QJ.groovy在WEB-INF\workarea\processes
2)然后,你需要再编辑这个 QJ流程来定义流程变量(实际就是流程表单,第一次启动流程需要填写本表单),再就是流程节点,有哪些处理流程。
定义流程节点的时候,流程的节点类型有以下几种
A)Wait ,就是需要人工干预才能执行的节点。
B)Activitiy ,就是可以自动执行的节点
C)fork ,分叉的节点
D)Join | orJoin 需要合并的节点
grailsflow 利用 groovy 的 Builder方法 其中两个地方:
1)ProcessBuilder 是处理所有流程的入口,其中具体的流程是自己定义的 groovy 文件,存放在 WEB-INF\workarea\processes 目录
2)ActionBuilder 是处理所有工作流的执行方法,同样,具体的执行也是groovy 文件 存放在WEB-INF\workarea\ations
以 DocumentTestProcess 为例 当你启动了一个 DocumentTest 流程,
processBuilder 查找 DocumentTestProcess 这个 groovy文件,然后 利用 Builder 方法 来 处理 你在 DocumentTestProcess 的相关定义,同时,如果在DocumentTestProcess 中的方法名为action ,再利用 ActionBuilder来builder对应的方法。
所以,所有的流程和方法都是动态的。如果你修改了对应的Groovy文件,如Process 和Action定义后, 侧不用重启程序,就可以按新的定义来执行。 总之,弄懂了 grailsflow,你就弄通了 groovy builder ,也就会了解 groovy builder的强大。
2008-11-11 通过给grailsflow 开发人员邮件,他们告知,grailsworkflow 0.8将会在1-2内发布一个公共版本,目前他们在内部测试中。