扩展Activiti 5.12轻松搞定流程实例跟随流程版本一起升级,本文详细介绍之
本功能依托于
bboss 3.6.2分支和
Activiti 5.12.0版本。
为activiti组件org.activiti.engine.repository.DeploymentBuilder增加以下接口方法:
Deployment deploy(int deploypolicy);
参数deploypolicy为int类型,用来指定流程部署策略,有三个值:
DeploymentBuilder.Deploy_policy_default
DeploymentBuilder.Deploy_policy_upgrade
DeploymentBuilder.Deploy_policy_delete
这三个值作为常量定义在部署接口org.activiti.engine.repository.DeploymentBuilder中。他们的含义分别为:
DeploymentBuilder.Deploy_policy_default 没有执行完毕的旧版本实例任务仍然根据旧版本流程定义运行
DeploymentBuilder.Deploy_policy_upgrade 没有执行完毕的旧版本实例任务迁移到新版本流程定义运行
DeploymentBuilder.Deploy_policy_delete 直接取消没有执行完毕的旧版本实例任务
原来的部署接口方法任然保留:
Deployment deploy();
以下是两个简单的使用扩展接口部署流程示例:
public Deployment deployProcDefByZip(String deploymentName,
ZipInputStream processDef,int upgradepolicy) {
DeploymentBuilder deploymentBuilder = processEngine
.getRepositoryService().createDeployment().name(deploymentName);
deploymentBuilder.addZipInputStream(processDef);
/**
* 参数upgradepolicy可以为以下常量值:
* DeploymentBuilder.Deploy_policy_default
* DeploymentBuilder.Deploy_policy_upgrade
* DeploymentBuilder.Deploy_policy_delete
*
*/
return deploymentBuilder.deploy(upgradepolicy);
}
public Deployment deployProcDefByPath(String deploymentName,
String xmlPath, String jpgPath,int deploypolicy) {
Deployment deploy = null;
/**
* 参数deploypolicy可以为以下常量值:
* DeploymentBuilder.Deploy_policy_default
* DeploymentBuilder.Deploy_policy_upgrade
* DeploymentBuilder.Deploy_policy_delete
*
*/
if(jpgPath != null && !jpgPath.equals(""))
{
deploy = repositoryService.createDeployment()
.name(deploymentName).addClasspathResource(xmlPath)
.addClasspathResource(jpgPath).deploy(deploypolicy);
}
else
{
deploy = repositoryService.createDeployment()
.name(deploymentName).addClasspathResource(xmlPath).deploy(deploypolicy);
}
return deploy;
}
分享到:
相关推荐
activiti,eclipse-activiti5.12插件
Activiti(Flowable) 流程实例克隆解决方案1
这个是Activiti开发的请假流程实例,可以作为用Activiti开发工作流的参考;项目采用spring+hibernate+strus2+activity开发,可以运行;数据库采用oracle,其中 QingJia 和 QingJiaHis 是自己的业务表,分别表示 请假...
NULL 博文链接:https://profound-accumulation.iteye.com/blog/2244881
Activiti 学习笔记四:流程实例、任务的执行
activiti jar包及安装说明
忙活了一个星期左右,查找各种资料,终于将Activiti的流程设计器分离出来,与SpringMVC,spring整合了起来,先把工程分享出来,等有时间了在慢慢讲解具体的整合步骤。工程下载之后直接可以运行,只需要改一下数据库...
activiti流程图查看demo
Activiti流程跟踪监控图路径线和节点高亮显示,本实例提供了两种方式,都可以生成png图片。
activiti代码实现审批流程的审批功能,可以正常运行,我已经调试通过
springboot整合activiti5.22实现页面流程设计项目,可直接启动,自动建表,调用接口http://localhost:8080/models/newModel,创建流程模型后,可直接访问http://localhost:8080/static/modeler.html?modelId=75001...
Activiti流程图部署及流程图部分操作 流程图部署及流程图部分操作 流程图部署有两种⽅式,⼀种是通过classpath,另⼀种是通过zip⽂件 通过classpath⽅式如下 public void deploymentProcessDefinition_classpath() {...
Activiti 6.0 流程设计器汉化,替换Activiti-App下的activiti-app-logic-6.0.0.jar 文件
activiti系列第二期课程课程重点讲解中国式的常用流程,比如activiti中modler设计器扩展属性、activiti中xml扩展自定义属性、activiti任意节点跳转、activiti多实例、activiti任务节点跳转、activiti多实例、...
activiti简单的请假流程java代码,里面使用的是activiti 5.13。代码详解可查阅http://blog.csdn.net/thread_cooperation/article/details/78458761
flowable官方文档汉化版V6.2,内容比较详细。可以进行参考。
学习activiti的最好入门实例,和大家一起分享
activiti工作流实例,实例化、获取任务、完成任务、任务跟踪、历史任务
activiti学习-使用activiti多实例任务实现会签