java - Activiti中通过execution-id识别任务类型

标签 java activiti bpmn

是否可以通过Activiti中的execution-id识别(BPMN)任务类型(服务任务、发送任务、接收任务……)?我怎样才能实现这一目标?

最佳答案

仅凭这些信息你无法得到你想要的东西。任务类型与 Activity 和 Activity ID 相关。您可以使用execution.getCurrentActivityId()来检索执行的 Activity ID。这可能对您有帮助:

final Execution execution = runtimeService.createExecutionQuery().executionId(executionId).singleResult();
final ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(execution.getProcessInstanceId()).singleResult();
final BpmnModel bpmnModel = repositoryService.getBpmnModel(processInstance.getProcessDefinitionId());
final org.activiti.bpmn.model.FlowElement flowElement = bpmnModel.getFlowElement(((DelegateExecution) execution).getCurrentActivityId());

flowElement 将是您要查找的 Activity 。您可以检查它的类型。

关于java - Activiti中通过execution-id识别任务类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23830699/

相关文章:

java - 如何解析此 JSON 对象以获取可以使用的配方对象列表?

java - 如何在 Flowable 中执行高效的卸载过程

java - 如何查询流程定义的完成实例?

java - 尝试以编程方式重新使用具有细微差异的布局

java - 使用 CDK 创建 ssh key 对/将其关联到 ec2 实例

java - 在不使用context.write的情况下使用MultipleOutputs将导致空文件

jbpm - BPM 中的中间事件或计时器

java - 如何在 Activity App Ui 中使用 Spring Boot Activity Rest api

java - activiti 是否允许用户像 jBPM 一样定义特定于域的扩展?

java - 如何在 Activiti 进程中从网关调用 Java 方法