当前位置:文档之家› Activiti-5.18.0与springMvc项目集成和activiti-explorer单独部署Web项目并与业务数据库关联方法

Activiti-5.18.0与springMvc项目集成和activiti-explorer单独部署Web项目并与业务数据库关联方法

Activiti-5.18.0与springMvc项目集成和activiti-explorer单独部署Web项目并与业务数据库关联方法Double_AutoEE2015-10-151.下载Activiti-5.18.0进入Ativiti官网:/download.html点击Activiti-5.18.0.zip进行下载2.解压Activiti-5.18.0.zip3.添加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.zip4.在springMvc配置文件中添加Activiti相关配置在自己工程springMvc配置文件,如spring-mvc-mybatis.xml中添加Activiti相关配置,如下:<!--加载activiti引擎--><bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean"> <property name="processEngineConfiguration" ref="processEngineConfiguration"/></bean><!--dataSource为自己已经定义好的数据源,transactionManager为自己已经定义好的事务管理器--><bean id="processEngineConfiguration"class="org.activiti.spring.SpringProcessEngineConfiguration"><property name="dataSource" ref="dataSource" /><property name="transactionManager" ref="transactionManager" /><property name="databaseSchemaUpdate" value="true" /><property name="jobExecutorActivate" value="false" /></bean><!--activiti的各种服务接口--><bean id="repositoryService" factory-bean="processEngine"factory-method="getRepositoryService" /><bean id="runtimeService" factory-bean="processEngine"factory-method="getRuntimeService" /><bean id="taskService" factory-bean="processEngine"factory-method="getTaskService" /><bean id="historyService" factory-bean="processEngine"factory-method="getHistoryService" /><bean id="managementService" factory-bean="processEngine"factory-method="getManagementService" />5.使用Activiti经过以上配置,即可在自己的工程中使用Activiti,进行工作流的相关操作可以通过main方法进行对应测试,如下:public static void main(String[] args) {ApplicationContext context = newClassPathXmlApplicationContext("spring-mvc-mybatis.xml");ProcessEngineprocessEngine = (ProcessEngine) context.getBean("processEngine");//部署流程RepositoryServicerepositoryService = processEngine.getRepositoryService();Deployment deployment =repositoryService.createDeployment().addClasspathResource("studentAskOffProcess2.b pmn").deploy();//启动流程启动流程使用流程定义中的process id="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 (inti = 0; i<tasks.size(); i++) {task = tasks.get(i);System.out.println("task = " + task.getId() + "-" + task.getName());}//完成任务plete(task.getId());tasks = taskService.createTaskQuery().taskCandidateUser("admin").list();System.out.println("tasks.size() = " + tasks.size());for (inti = 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流程设计和部署后,在业务工程中即可对流程进行操作。

相关主题