问题一:如何发起流程

个人:

首先,部署 activiti 引擎项目,管理工作流;
然后,定义流程,简单说就是画 bpmn 图;
接着,部署定义的流程(发布流程定义);
接着,实例化流程定义,就是发起流程;
接着,查看待办任务,执行任务,完成任务;
最后,完成任务,查看结果;

问题二:一套流程定义,如何传入不同的参数,以及额外的流程参数

参数包括特殊的流程定义上的参数,流程定义实例的参数,流程定义实例的某个节点的参数。

个人:

目前了解到的参数,包括实例的全局参数 variable,实例的节点参数 localVariable;
不知道有没有流程定义的参数,即该参数只与流程定义有关系,所有的流程定义的实例都取自流程定义的参数。
额外的参数,就是说每个特殊的流程定义,可能存在不一样的附加信息,只是需要走的流程完全一致。另外一种情况是,每个流程定义的任务节点附加信息不同,有的需要全局可见,有的需要仅仅该节点可见;

问题三:流程的重复部署

个人:

首先重复部署,会不会产生两个相同的流程定义?
然后,对于修改后的流程,再次部署是不是产生两个流程(还是说产生一个版本);如果是产生一个新的版本,那么已经创建的流程定义实例如何执行(流程定义的改变,包括增减任务节点、修改参数、修改流程判断条件等)

问题四:当前运行的流程定义实例,以及实例对应的参数等与历史数据的关系

个人:

对于这个问题,需要分两个层次来回答。一个是从 activiti 的框架体系上来说,数据的流转,数据库数据存储;一个是理解 activiti 数据库表模型间关系。
就包含了用户权限,任务的指派分配。

问题五:任务的事务

个人:

任务的事务,是否能够与 spring 集成,使用一套?

问题六:工作流 activiti 的 API

个人:

restful 的 API
Java 的 API
怎么控制流程定义,热部署,完成流程,查看流程。

问题七:可见,与可操作

个人:

对于任务,或者流程定义,如何配置只可见,而不可操作?

问题八:可以直接创建任务?

在使用 activiti 7 官方的 example 时,发现任务可以随意建立,不需要关联流程定义,流程定义实例。
一直以为,任务必须是流程定义实例的一个节点,实例是对流程定义的一个具体化。今天发现,居然任务可以不是流程定义实例化出来的,可以直接创建!

问题九:实操

  1. 流程定义的部署:
    1. 指定部署;
    2. 热部署;
    3. 修改后部署;