Activiti-5.18.0与springMvc项目集成和
activiti-explorer单独部署Web项目并与业务数据库关联方法
(AutoEE实现方式)
Double_AutoEE
2015-10-15
AutoEE-自动智能快速开发平台官网:http://www.autoee.org
最新版本:AutoEE_V3.0.4
演示系统访问地址:http://54.89.140.140:8080/autoEE/ (360浏览器请使用极速模式)
1. 下载Activiti-5.18.0
Ø 进入Ativiti官网:http://www.activiti.org/download.html
Ø 点击Activiti-5.18.0.zip进行下载
2. 解压Activiti-5.18.0.zip
3. 添加Activiti所需jar包到自己的项目工程
Ø 复制libs目录下的所有jar包到自己的工程目录lib下
Ø 进入activiti-5.18.0\wars目录,解压activiti-explorer.war
Ø 进入activiti-5.18.0\wars\activiti-explorer\WEB-INF\lib目录,复制如下jar包到自己的工程目录lib下
jackson-annotations-2.2.3.jar
jackson-core-2.2.3.jar
jackson-databind-2.2.3.jar
joda-time-2.6.jar
Ø 有时还需要如下jar包,可以自己下载
gwt-dev-windows.jar
gwtext-2.0.5.zip
4. 在springMvc配置文件中添加Activiti相关配置
Ø 在自己工程springMvc配置文件,如spring-mvc-mybatis.xml中添加Activiti相关配置,如下:
<!-- 加载activiti引擎 -->
<beanid="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">
<propertyname="processEngineConfiguration"ref="processEngineConfiguration" />
</bean>
<!-- dataSource为自己已经定义好的数据源,transactionManager为自己已经定义好的事务管理器 -->
<beanid="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
<propertyname="dataSource" ref="dataSource" />
<propertyname="transactionManager" ref="transactionManager" />
<propertyname="databaseSchemaUpdate" value="true" />
<propertyname="jobExecutorActivate" value="false" />
</bean>
<!-- activiti的各种服务接口-->
<beanid="repositoryService" factory-bean="processEngine"factory-method="getRepositoryService" />
<beanid="runtimeService" factory-bean="processEngine"factory-method="getRuntimeService" />
<beanid="taskService" factory-bean="processEngine"factory-method="getTaskService" />
<beanid="historyService" factory-bean="processEngine"factory-method="getHistoryService" />
<beanid="managementService" factory-bean="processEngine"factory-method="getManagementService" />
5. 使用Activiti
Ø 经过以上配置,即可在自己的工程中使用Activiti,进行工作流的相关操作
Ø 可以通过main方法进行对应测试,如下:
public static void main(String[] args) {
ApplicationContextcontext = newClassPathXmlApplicationContext("spring-mvc-mybatis.xml");
ProcessEngine processEngine= (ProcessEngine) context.getBean("processEngine");
//部署流程
RepositoryServicerepositoryService = processEngine.getRepositoryService();
Deploymentdeployment =repositoryService.createDeployment().addClasspathResource("studentAskOffProcess2.bpmn").deploy();
//启动流程 启动流程使用流程定义中的 processid="studentAskOffProcess"
RuntimeServiceruntimeService = processEngine.getRuntimeService();
ProcessInstanceprocessInstance =runtimeService.startProcessInstanceByKey("studentAskOffProcess");
//取得任务接口
TaskServicetaskService = processEngine.getTaskService();
//查询流转到accountancy 的任务
List<Task>tasks =taskService.createTaskQuery().taskCandidateUser("fuxs").list();
Task task = null;
System.out.println("tasks.size()= " + tasks.size());
for (int i = 0; i< tasks.size(); i++) {
task =tasks.get(i);
System.out.println("task= " + task.getId() + "-" + task.getName());
}
//完成任务
taskService.complete(task.getId());
tasks =taskService.createTaskQuery().taskCandidateUser("admin").list();
System.out.println("tasks.size()= " + tasks.size());
for (int i = 0; i< tasks.size(); i++) {
task =tasks.get(i);
System.out.println("task= " + task.getId() + "-" + task.getName());
}
}
6. 部署activiti-explorer
Ø 在eclipse中新建一个web工程,工程名为activiti-explorer
Ø 进入activiti-explorer.war解压后的activiti-5.18.0\wars\activiti-explorer目录,复制全部内容,粘贴到工程activiti-explorer中的WebContent目录下,如下:
Ø 将mysql的驱动jar包mysql-connector-java-5.1.27.jar复制到web-INF的lib目录中,并添加到工程编译路径下
Ø 修改目录WebContent\WEB-INF\classes\目录中的数据库配置文件db.properties,将数据库配置改完自己的mysql数据库,使activit-explorer可以访问自己的业务数据库,如下:
Ø 在eclipse中添加tomcat7 服务器,将工程activiti-explorer部署到服务器中,如下:
Ø 启动tomcat7 服务器,启动成功后在浏览器中访问http://localhost:8080/activiti-explorer/,显示activiti-explorer登陆界面(IE浏览器显示会有问题,最好使用火狐浏览器或其他显示没有问题的浏览器)。
Ø 输入用户名 Kermit 和密码 Kermit 进行登陆,进入操作界面
Ø 点击【流程】图标,显示自带的demo流程,如自己在前通过eclipse创建过流程,也会显示出来,因为读取的是自己的业务数据库
Ø 点击【流程设计工作区】,可以新建流程模板并进行部署
Ø 点击【新建流程】,录入流程名称和描述,进入流程编辑界面,既可进行在线流程编辑,操作简单方便。
Ø 以上通过activiti-explorer实现在线流程设计,并将业务工程和流程设计工程分离,减少对业务工程的侵入,通过activiti-explore流程设计和部署后,在业务工程中即可对流程进行操作。
============================================华丽丽分割线==================================================
AutoEE_V1.0.1-自动智能开发平台免费下载通知
为方便大家交流学习,在AutoEE_V2.0.0版本开发完成并发布后,决定将AutoEE_V1.0.1版本免费发布,大家可以加入以下QQ群,在群文件中进行下载AutoEE_V1.0.1版本开源源码、数据库初始化文件和技术文档。 QQ交流群: 371530679 群名称:AutoEE-自动智能开发AutoEE-自动智能开发平台是一款使用当前主流框架搭建,并结合Velocity模板引擎和MyBatis Generator实现的高度可自定义、高度可配置的自动智能生成代码的开源的快速开发平台。
使用AutoEE开发平台可以简单、快速、高效的构建各种类型Web应用系统。
百度文库中的技术文档
文档名称:AutoEE_V1.0.0-自动智能开发平台-技术文档
文档地址:http://wenku.baidu.com/view/b80e82548bd63186bdebbc58
AutoEE_V2.0.0-自动智能开发平台
AutoEE_V2版本是在V1版本的基础上进行的升级改造,集成Activiti_5.18.0工作流引擎,引入activiti-explorer在线流程设计器,同时扩展代码模板,新增“工作流申请模板”和“工作流审核模板”,可以实现快速开发工作流相关模块,通过配置自动智能生成模块代码。
AutoE_V2版本新增了代码模板扩展功能,开发人员可以根据业务需求自定义所需的代码模板,进行模块配置时选择自定义的代码模板,实现自动生成的代码完全符合自己的业务需求,使得开发平台能够适应于各种各样的业务需求开发。
AutoEE_V2版本还升级了一些其他的功能,完善了部分代码生成处理逻辑,进行模块配置时操作更加简便,同时修正了已知BUG,AutoEE-自动智能开发平台的整体功能趋于完整,性能进一步提高,使得开发工作变得更加简单、快速、高效。
AutoEE_V2.0.0-升级内容
1) 集成Activiti_5.18.0工作流引擎
2) 引入activiti-explorer在线流程设计器
3) 实现流程图高亮显示已执行节点和路径功能
4) 新增代码模板扩展功能
5) 新增“工作流申请模板”和“工作流审核模板”
6) 模块配置功能新增工作流相关配置项
7) 新增日期框自定义校验规则
升级具体详细内容及操作流程请查看《AutoEE_V2.0.0-自动智能开发平台-技术文档》。
CSDN 中下载:http://download.csdn.net/detail/heishuang/9232779
百度文库地址:http://wenku.baidu.com/view/7d2277d0fe4733687e21aad8