通过任务定义id轻松获取任务名称的方法

时间:2015-06-05 10:15:49

标签: java bpm camunda

有一种相对简单的方法来按键获取流程定义名称,但我找不到任何方法(除了解析BPMNModel)以按任务定义ID获取任务定义名称(例如,流程定义ID )。有没有人知道类似的东西?

修改

我知道我可以按任务实例获取任务名称(即org.camunda.bpm.engine.task.Task#getName),但是我需要通过任务定义获取任务名称(也就是说,我没有org.camunda.bpm.engine.task.Task的实例)

1 个答案:

答案 0 :(得分:2)

使用TaskService,您可以通过调用其方法createTaskQuery()来创建任务查询。然后,创建的任务查询对象提供了几种通过传递查询参数来缩小查询范围的方法,例如

  • processDefinitionId("")=>任务所属的流程定义部署的ID
  • processDefinitionKey("")=> bpmn xml
  • 中进程定义的id
  • taskDefinitionKey("")=> bpmn xml
  • 中任务本身的id

然后查询返回Task对象的list()或singleResult()Task。 Task接口有一个方法getName():

Task task = taskService.createTaskQuery().taskDefinitionKey("myKey").singleResult();
String name = task.getName();