Activiti工作流引擎使用
1.2 Activiti与JBPM5?
对于Activiti、jBPM4、jBPM5我们应该如何选择,在InfoQ上有一篇文章写的很好,从大的层面比较各个引擎之间的差异,请参考文章: 纵观jBPM:从jBPM3到jBPM5以及Activiti51.3 安装Activiti数据库
Activiti Explorer默认使用H2内存数据库。 要让Activiti使用独立运行的H2数据库或者其他数据库, 可以修改Activiti Explorer web应用WEB-INF/classes目录下的db.properties。
另外,注意Activiti Explorer自动生成了演示用的默认用户和群组,流程定义,数据模型。 要想禁用这个功能,要修改WEB-INF目录下的activiti-standalone-context.xml。 可以使用下面的
demoDataGenerator
bean定义代码完全禁用安装默认数据。从代码中也可以看出,我们可以单独启用或禁用每一项功能。
<bean id="demoDataGenerator" class="org.activiti.explorer.demo.DemoDataGenerator">
<property name="processEngine" ref="processEngine" />
<property name="createDemoUsersAndGroups" value="false" />
<property name="createDemoProcessDefinitions" value="false" />
<property name="createDemoModels" value="false" />
</bean>
1.3 引入Activiti jar和依赖
为了引用Activiti jar和依赖,我们推荐使用 Maven(或Ivy), 它简化了我们之间的依赖管理。 参考http://www.activiti.org/community.html#maven.repository 来为你的项目引入必须的jar包。
如果不想用Maven,你也可以自己把这些jar引入到你的项目中。 Activiti下载zip包包含了一个libs
目录, 包含了所有Activiti的jar包(和源代码jar包)。依赖没有用这种方式发布。 Activiti引擎必须的依赖如下所示(通过mvn dependency:tree
生成):
:
org.activiti:activiti-engine:jar:5.12.1 +- org.apache.commons:commons-email:jar:1.2:compile | +- javax.mail:mail:jar:1.4.1:compile | \- javax.activation:activation:jar:1.1:compile +- org.apache.commons:commons-lang3:jar:3.1:compile +- org.mybatis:mybatis:jar:3.1.1:compile +- org.springframework:spring-beans:jar:3.1.2.RELEASE:compile | \- org.springframework:spring-core:jar:3.1.2.RELEASE:compile | +- org.springframework:spring-asm:jar:3.1.2.RELEASE:compile | \- commons-logging:commons-logging:jar:1.1.1:compile \- joda-time:joda-time:jar:2.1:compile
注意:只有使用了mail service task才必须引入mail依赖jar。
所有依赖可以在Activiti 源码的模块中, 通过mvn dependency:copy-dependencies
下载。