Созданная задача является нулевой в Camunda с использованием метода singleResult () - PullRequest
0 голосов
/ 04 августа 2020

Я создавал taskService в camunda с помощью следующей команды, но получаю пустую задачу. Есть идеи, в чем может быть причина?

Task task = taskService.createTaskQuery()
            .processInstanceBusinessKey(businessKey).initializeFormKeys().singleResult()

задача оценена как null.

businessKey - это действительная непустая строка.

1 Ответ

0 голосов
/ 19 августа 2020

Либо экземпляр задачи не был создан / не активен, либо businessKey не соответствует. Попробуйте менее строгие критерии и посмотрите, получите ли вы результат, например:

List<Task> taskList = taskService.createTaskQuery().active().list()

Затем снова добавьте businessKey и проверьте, соответствует ли он. Правильно ли вы отправили businessKey при запуске экземпляра?

Если вы только что запустили экземпляр процесса и имеете доступ к идентификатору, то вы также можете попробовать использовать идентификатор экземпляра процесса в качестве критерия фильтрации:

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);
...