Activiti-5.18.0与springMvc项目集成和activiti-explorer单独部署Web项目并与业务数据库关联方法Double_AutoEE2015-10-151.下载Activiti-5.18.0进入Ativiti官网:点击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.jarjackson-core-2.2.3.jarjackson-databind-2.2.3.jarjoda-time-2.6.jar有时还需要如下jar包,可以自己下载gwt-dev-windows.jargwtext-2.0.5.zip4.在springMvc配置文件中添加Activiti相关配置在自己工程springMvc配置文件,如spring-mvc-mybatis.xml中添加Activiti相关配置,如下:!--加载activiti引擎--beanid=processEngineclass=org.activiti.spring.ProcessEngineFactoryBeanpropertyname=processEngineConfigurationref=processEngineConfiguration//bean!--dataSource为自己已经定义好的数据源,transactionManager为自己已经定义好的事务管理器--beanid=processEngineConfigurationclass=org.activiti.spring.SpringProcessEngineConfigurationpropertyname=dataSourceref=dataSource/propertyname=transactionManagerref=transactionManager/propertyname=databaseSchemaUpdatevalue=true/propertyname=jobExecutorActivatevalue=false//bean!--activiti的各种服务接口--beanid=repositoryServicefactory-bean=processEnginefactory-method=getRepositoryService/beanid=runtimeServicefactory-bean=processEnginefactory-method=getRuntimeService/beanid=taskServicefactory-bean=processEnginefactory-method=getTaskService/beanid=historyServicefactory-bean=processEnginefactory-method=getHistoryService/beanid=managementServicefactory-bean=processEnginefactory-method=getManagementService/5.使用Activiti经过以上配置,即可在自己的工程中使用Activiti,进行工作流的相关操作可以通过main方法进行对应测试,如下:publicstaticvoidmain(String[]args){ApplicationContextcontext=newClassPathXmlApplicationContext(spring-mvc-mybatis.xml);ProcessEngineprocessEngine=(ProcessEngine)context.getBean(processEngine);//部署流程RepositoryServicerepositoryService=processEngine.getRepositoryService();Deploymentdeployment=repositoryService.createDeployment().addClasspathResource(studentAskOffProcess2.bpmn).deploy();//启动流程启动流程使用流程定义中的processid=studentAskOffProcessRuntimeServiceruntimeService=processEngine.getRuntimeService();ProcessInstanceprocessInstance=runtimeService.startProcessInstanceByKey(studentAskOffProcess);//取得任务接口TaskServicetaskService=processEngine.getTaskService();//查询流转到accountancy的任务ListTasktasks=taskService.createTaskQuery().taskCandidateUser(fuxs).list();Tasktask=null;System.out.println(tasks.size()=+tasks.size());for(inti=0;itasks.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(inti=0;itasks.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服务器,启动成功后在浏览器中访问,显示activiti-explorer登陆界面(IE浏览器显示会有问题,最好使用火狐浏览器或其他显示没有问题的浏览器)。输入用户名Kermit和密码Kermit进行登陆,进入操作界面点击【流程】图标,显示自带的demo流程,如自己在前通过eclipse创建过流程,也会显示出来,因为读取的是自己的业务数据库点击【流程设计工作区】,可以新建流程模板并进行部署点击【新建流程】,录入流程名称和描述,进入流程编辑界面,既可进行在线流程编辑,操作简单方便。以上通过activiti-explorer实现在线流程设计,并将业务工程和流程设计工程分离,减少对业务工程的侵入,通过activiti-explore流程设计和部署后,在业务工程中即可对流程进行操作。