Activiti与SpringBoot项目整合
2018-03-14 16:34
453 查看
1.添加activiti-spring-boot-starter-basic依赖
<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter-basic</artifactId> <version>5.21.0</version> </dependency>
2.编写ActivitiConfig类
配置 org.activiti.spring.SpringProcessEngineConfiguration类注入数据源和事务模板管理事务@Configurationpublic class ActivitiConfig extends AbstractProcessEngineAutoConfiguration {
// 注入数据源和事务管理器
@Bean
public SpringProcessEngineConfiguration springProcessEngineConfiguration(
@Qualifier("dataSourceSyDev") DataSource dataSource,
@Qualifier("transactionManager") PlatformTransactionManager transactionManager,
SpringAsyncExecutor springAsyncExecutor) throws IOException {
return this.baseSpringProcessEngineConfiguration(dataSource, transactionManager, springAsyncExecutor);
}
}
3.编写ActivitiTest进行部署测试。
注:(若不指定路径,默认去资源目录下的processes文件夹寻找xxx.bpmn和xxx.png资源部署)@RunWith(SpringRunner.class) @SpringBootTest public class ActivitiTest { @Autowired private RepositoryService repositoryService; @Autowired private RuntimeService runtimeService; @Autowired private IdentityService identityService; @Autowired private TaskService taskService; @Autowired private HistoryService historyService; @Autowired private ProcessEngineConfigurationImpl processEngineConfiguration; /** * 布置流程 (操作数据表 act_re_deployment,act_re_procdef,act_ge_bytearray * */ @Test public void createDeployment() { DeploymentBuilder builder = repositoryService.createDeployment(); builder.addClasspathResource("processes/MyProcess.bpmn"); builder.addClasspathResource("processes/MyProcess.png"); Deployment deploy = builder.deploy(); System.out.println("布署id=" + deploy.getId()); } }
4.zip方式进行动态部署
/** * 部署流程定义使用zip方式 (操作数据表 act_re_deployment,act_re_procdef,act_ge_bytearray * */ @Test public void createDeploymentByZip() { InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("processes/MyProcess.zip"); // 获取指定文件资源流 ZipInputStream zipInputStream = new ZipInputStream(inputStream); // 实例化zip输入流对象 // 获取部署对象 Deployment deployment = repositoryService.createDeployment() // 创建部署 .name("审批流程") // 流程名称 .addZipInputStream(zipInputStream) // 添加zip是输入流 .deploy(); // 部署 System.out.println("流程部署ID=" + deployment.getId() + ",流程部署Name=" + deployment.getName()); }
相关文章推荐
- springboot中整合activiti流程设计器时遇到访问项目需要输入tomcat用户名和密码的问题
- spring boot项目整合activiti后,打开页面需要验证
- 在springBoot项目中使用activiti
- spring boot 整合 activiti 踩过的坑 (持续更新)
- 一个简单的SpringBoot整合Mybatis项目
- Spring-Boot项目+Spring-Mybatis+分页插件+Spring单元测试整合
- springboot 整合web项目支持jsp
- Activiti Modeler 5.22.0整合到Spring项目
- [SpringBoot]IDEA快速构建SpringBoot应用项目(二)整合Mybatis + Druid
- Spring boot整合activiti modeler 5.22
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
- SpringBoot整合Sentry监控项目日志
- Springboot整合swagger2项目的部署问题
- Activiti-modeler整合到Spring项目
- Spring Boot整合Swagger框架示例项目。
- SpringBoot+Maven项目实战(3):整合Freemark模板
- 使用IDEA搭建SpringBoot项目且整合mongoDB和mysql
- BOS项目练习(activiti,历史数据操作,流程变量,任务组,监听器,网关,spring整合)
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数示例代码
- Springboot整合Dubbo - 项目创建和环境搭建