CSDN博客

img accesine960
博客专家

Shark工作流的实现和WMFC&OMG规范的对比1

发表于2004/2/2 23:20:00  3285人阅读

分类: 工作流

Shark工作流的实现和WMFC&OMG规范的对比

                                        -----第一部分:流程的初始化和执行

 

 

     活动的状态列表:

1、  open.running

2、  open.not_running.not_started

3、  open.not_running.suspended

4、  closed.completed

5、  closed.terminated

6、  closed.aborted

   

     流程类名:WfProcess,所有具体的流程实例通过:WfProcessMgr 类来管理,调用create_process方法来程成一个Process的实例。

    

      

工作流活动的初始化过程如下:

              InstantiateProcess类中,相应初始化消息,调用actionPerformed方法来完成。具体如下:

1、             流程实例WfProcess都是通过:WfProcessMgr 类来创建,调用create_process方法来程成一个Process的实例。

2、             获得该流程启动需要得的上下文:

NameValue[] context=proc.process_context();

3、             如果有初始化必需的参数,显示用户界面,用户输入后继续进行。

4、             调用这个实例的start ()函数具体执行这个Process
如下:

1)  change_state("open.running");设置这个Process的状态为开始执行;

2)  使用:

Set starts  = SharkUtilities.getStartActivities( getProcessDefinition() );

来获得这个Process下所有可执行的活动activity

3)  调用startActivity 执行上面获得Activities 进行具体的活动执行

 

待续

作者:田春峰

accesine@163.com

 

我在察看了 OsWorkflow  , shark , ofbiz , obe , jbpm 后发现工作流困难的地方在于:

    1、如何把工作流程和工作流程执行的具体任务联系起来。

       就是说:
          比如:一个工作流有A,B,C三个具体的活动activity。

       那么,如何把这些activity 和具体的java方法函数帮定到一起,

       比如:如何让A流程执行createLog()方法,B流程执行makeDesicision()方法,等等。

    2、工作流如何在B/S下让用户自定义。

   

如果那位朋友有类似的经验,我们可以交流。

 

 

0 0

相关博文

我的热门文章

img
取 消
img