我正在使用以下命令在camunda中创建taskService,但是正在创建空任务。知道是什么原因吗?
Task task = taskService.createTaskQuery()
.processInstanceBusinessKey(businessKey).initializeFormKeys().singleResult()
任务评估为空。
businessKey
是提供的有效非空字符串。
答案 0 :(得分:0)
未创建任何任务实例/该任务实例处于活动状态,或者businessKey不匹配。 尝试使用限制性较小的条件,看看是否有结果,例如:
List<Task> taskList = taskService.createTaskQuery().active().list()
然后重新添加businessKey并检查其是否匹配。启动实例时您是否正确提交了BusinessKey?
如果您只是刚刚启动流程实例并有权访问ID,那么您还可以尝试使用流程实例ID作为过滤条件:
RuntimeService runtimeService = engine.getRuntimeService();
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("MyProcess");
TaskService taskService = engine.getTaskService();
List<Task> taskList = taskService.createTaskQuery()
.processInstanceId(processInstance.getId())
.list();
Task task = taskList.get(0);