1.下载activiti-5.3 www.activiti.org
2.C:\activiti-5.3\activiti-5.3\setup
修改build.properties db=mysql
修改build.mysql
db=mysql jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/activiti?autoReconnect=true jdbc.username=activiti jdbc.password=activiti
运行ant db.create
2.新建项目,把C:\activiti-5.3\activiti-5.3\workspace\activiti-spring-examples拷贝到项目中
如果运行了ant demo.setup 在这个目录下会有libs-runtime libs-test 把相关类库添加到项目中
3.修改activiti-context.xml
<?xml version="1.0" encoding="UTF-8"?> classpath:custom-persistence.xml
4.新建一个过程定义文件financialReport.bpmn20.xml(从10分钟教程中copy过来的)
5.新建一个测试用例,测试发布,任务获取整个过程
package com.brsy.test;import java.util.List;import org.activiti.engine.IdentityService;import org.activiti.engine.RepositoryService;import org.activiti.engine.RuntimeService;import org.activiti.engine.impl.identity.GroupEntity;import org.activiti.engine.impl.identity.UserEntity;import org.activiti.engine.repository.Deployment;import org.activiti.engine.runtime.ProcessInstance;import org.activiti.engine.task.Task;import org.activiti.spring.impl.test.SpringActivitiTestCase;import org.junit.Test;import org.springframework.test.context.ContextConfiguration;@ContextConfiguration("classpath:activiti-context.xml")public class TestAll extends SpringActivitiTestCase { protected IdentityService identityService; protected RepositoryService repositoryService; protected RuntimeService runtimeService; @Test public void testAll(){ identityService = applicationContext.getBean(IdentityService.class); UserEntity user = new UserEntity(); user.setId("webcat"); user.setFirstName("wang"); user.setLastName("peiling"); user.setPassword("password"); identityService.saveUser(user); GroupEntity group = new GroupEntity(); group.setId("test"); group.setName("test"); group.setType("1"); identityService.saveGroup(group); identityService.createMembership("webcat", "test"); repositoryService = applicationContext.getBean(RepositoryService.class); Deployment deployment = repositoryService.createDeployment() .addClasspathResource("com/brsy/test/financialReport.bpmn20.xml") .deploy(); runtimeService = applicationContext.getBean(RuntimeService.class); ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("financialReport"); List tasks = taskService.createTaskQuery().taskCandidateUser("webcat").list(); System.out.println("tasks=========" + tasks.size()); }}
参考http://rongjih.blog.163.com/blog/static/33574461201011345145978/