根据流程部署ID来获取流程定义图片
使用下面的一串代码的前提:已知流程部署ID,中间可能会由于空指针异常而报错,使用时需个人进行优化
需要注意的是下面的这一串代码中,各种服务是通过ActivitiRule而创建的,而ActivitiRule这个是在测试环境下面才能使用的类,开发时可以使用自动注解来创建Activiti6的7大服务接口。
/*** 根据流程部署ID获取流程部署图片文件输入流,并将其写到指定的文件中*/
public void viewImage() throws Exception{String deploymentId="流程部署ID";RepositoryService repositoryService=activitiRule.getRepositoryService();List<String> names=repositoryService.getDeploymentResourceNames(deploymentId);String imageName=null;for(String name:names){if(name.indexOf(".png")>=0){imageName=name;}}InputStream in=null;File f=new File("d:/"+imageName);if(imageName!=null){in=repositoryService.getResourceAsStream(deploymentId,imageName);}OutputStream outputStream = new FileOutputStream(f);byte[] bytes = new byte[1024];int rc = 0;while ((rc = in.read(bytes, 0, 100)) > 0) {outputStream.write(bytes, 0, rc);}in.close();outputStream.close();
}
将文件输入流写入到输出流中,在页面中以Image 标签的src属性接收就可以获取该输出流作为一个图片进行展示。
OutputStream outputStream= response.getOutputStream();
for(int b=-1;(b=in.read())!=-1;){outputStream.write(b);
}
in.close();
outputStream.close();
<body><image src="/demo/get"/>
</body>
SpringBoot项目中,获取流程定义图并将其以图片形式在页面中进行展示
/*** 将输入流回显到输出流中*/
@RequestMapping("/get")
public void getData(HttpServletRequest request, HttpServletResponse response) throws Exception{String deploymentId="7501";List<String> names=repositoryService.getDeploymentResourceNames(deploymentId);String imageName=null;for(String name:names){if(name.indexOf(".png")>=0){imageName=name;}}InputStream in=null;File f=new File("d:/"+imageName);if(imageName!=null){in=repositoryService.getResourceAsStream(deploymentId,imageName);}OutputStream outputStream= response.getOutputStream();for(int b=-1;(b=in.read())!=-1;){outputStream.write(b);}in.close();outputStream.close();}
根据流程部署ID来获取流程定义图片相关推荐
- Python:批量增强图片清晰度 ——基于百度API,含获取的AK、 SK的流程,access_token的获取流程,以及生成.exe文件
Python:批量增强图片清晰度 --基于百度API,含获取的AK. SK的流程,access_token的获取流程,以及生成.exe文件 最近需要提高一些图片的清晰度,但一张张的去弄太费时间了,所以 ...
- 2、流程部署-上传到服务数据库,查看当前正在执行任务
流程部署-上传到服务数据库,正在执行任务 1.部署单个BPMN文件到服务 2.1次部署多个BPMN文件 3.流程定义信息查询 4.查询流程下正在跑的任务 5.删除流程部署信息 6.流程资源下载 1.部 ...
- JAVAWEB开发之工作流详解(二)——Activiti核心API的使用(流程定义和流程实例的管理、流程变量、监听器...)以及与Spring的集成
管理流程定义 设计流程定义文档 bpmn文件 设置方式可以直接使用插件图形化界面进行设置 为某任务节点指定任务执行者 保存后的BPMN文件可以使用XML编辑器打开 BPMN 2.0根节点是defini ...
- activiti 根据 流程实例ID 获取发起人
/**获取发起人* @param PROC_INST_ID_ //流程实例ID* @from fhadmin.cn*/protected String getInitiator(String PROC ...
- 工作流流程部署 一般功能代码
<!DOCTYPE html> <html lang="zh" xmlns:th="http://www.thymeleaf.org" xml ...
- Flowable实战(三)流程部署管理
一.流程定义的版本 当部署流程定义时,数据库中的流程定义会是这个样子: id key name version myProcess:1:676 myProcess My important pro ...
- java中bpmn流程图_Java学习之BPMN知识以及Activiti的流程部署
BPMN的介绍 Activiti项目是一项新的基于Apache许可的开源BPM平台,从基础开始构建,旨在提供支持新的BPMN 2.0标准,包括支持对象管理组(OMG),面对新技术的机遇,诸如互操作性和 ...
- Activiti 流程部署方式 activi 动态部署(高级源码篇)
Activiti 流程部署方式 activi 动态部署 目录 概 述 第一种方法: 设计流程引擎: 相关工具如下: 分析: 小结: 参考资料和推荐阅读 LD is tigger forever,CG ...
- flowable工作流-BPMN流程部署
BPMN相关基础 在画流程图之前,首先需要了解BPMN的一些基础知识:开始.结束事件.用户任务.任务受让人.任务审核人.网关等一些基础知识,具体可以参考官方文档,介绍的很详细,也比较容易理解.BPMN ...
最新文章
- tiny-cnn开源库的使用(MNIST)
- 一种解决 MacBook 里的 App Store 无法登录的问题
- C++抽象基类和纯虚成员函数
- java读写锁降级_java的读写锁中锁降级的问题
- Linux显示某文件中有关某字符串的信息
- WebSocket FlashSocket
- linux的crontab监控,通过crontab自动监测与管理表空间
- 三、	vSphere 6.7 U1(三):部署AD和DNS
- UVA 11090 Going in Cycle!! 二分答案 + bellman-ford
- MySQL数据库基本用法-查询
- 2016 英语作文二
- redis通过lua脚本实现分布式锁
- 修改Unity中Lua文件的默认打开程序
- 数据大屏产品介绍PPT_【达索系统】 Ortems APS产品介绍 PPT
- php目录结构 modules,目录结构
- 应届毕业生求职,注意事项
- 【实战篇】——keras合并多个模型
- Open Inventor 10.9.2 Crack
- windows的cmd常用命令
- python爬虫拖动滚动条到底部/顶部/指定元素处
热门文章
- git提交大文件的解决方法
- 广告深度预估技术在美团到店场景下的突破与畅想
- 【报告分享】2021年品牌CDP与营销数字化转型报告.pdf(附下载链接)
- 【白皮书分享】2020年短视频全链路营销白皮书.pdf(附下载链接)
- 面向科研的推荐系统Benchmark诞生!
- 数学建模:评价模型——聚类分析 K-Means python实现
- Leetcode每日一题:842.split-array-into-fibonacci-sequenc(将数组拆分成斐波那契序列)
- CN笔记:第三章 链路层
- ROS入门-4.安装ROS系统(ubuntu20.04版本安装ros的noetic版本)
- 蓝桥杯 基础练习 Sine之舞