java - 在Activiti中获取带有服务任务的流程图

标签 java activiti

我使用的是 Activiti 5.22.0。
我使用 Eclispe 中的 Activiti Designer 插件来创建流程。
现在我想使用服务任务来获取突出显示当前任务的流程图并将其保存到数据库以便稍后在网络上显示。
我是 Activiti 的新手,所以我真的不知道应该在 Service Task 的 Java 类中编写什么来获取流程图图像。
你能帮助我吗? 非常感谢。

最佳答案

Activiti 在 org.activiti.image 模块中附带了一个图表生成器。使用可以根据您的情况使用 DefaultDiagramGenerator 。下面是帮助您入门的示例代码。请注入(inject)所需的服务。

/**
 * Get Process instance diagram
 */
public InputStream getProcessDiagram(String processInstanceId) {
    ProcessInstance processInstance = runtimeService.createProcessInstanceQuery()
            .processInstanceId(processInstanceId).singleResult();

    // null check
    if (processInstance != null) {
        // get process model
        BpmnModel model = repositoryService.getBpmnModel(processInstance.getProcessDefinitionId());

        if (model != null && model.getLocationMap().size() > 0) {
            ProcessDiagramGenerator generator = new DefaultProcessDiagramGenerator();
            return generator.generateDiagram(model, ActivitiConstants.PROCESS_INSTANCE_IMAGE_FORMAT,
                    runtimeService.getActiveActivityIds(processInstanceId));
        }
    }
    return null;
}

关于java - 在Activiti中获取带有服务任务的流程图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54744159/

相关文章:

java - 如何在 Activity 中实现 JavaDelegate 接口(interface)的一个类中放置多个服务

java - 如何在activiti7的用户任务中获取表单属性?

java - 如何在 android 中拉伸(stretch) GridView 的行,其中 gridview 包含按钮

java - 从请求参数创建动态查询的简洁方法

java - 我如何在 main(String[] args) 中显示它以及如何在 xml 中连接这些类和/或构造函数?

java - Java MVC中行SQL统计记录

java - 如何在 Spring Boot 2 和 Activiti 7 中添加 Activiti Spring Boot Starter Basic?

java - 从流程实例中获取变量映射

Javascript/REST/Activiti - 我在 XMLHttpRequest 中做错了什么?

java - JAX-RS (Resteasy 3.5.0.Final) + Wildfly 12 + Java 9 + maven = 404 未找到,但 JAX-RS (Resteasy 3.5.0.Final) + Wildfly 12 + Java 8 + maven 有效