首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从历史任务中获取表单密钥

从历史任务中获取表单密钥
EN

Stack Overflow用户
提问于 2015-01-27 15:41:11
回答 1查看 1K关注 0票数 2

我们从任务服务中获得表单键,就像下面的代码片段一样

代码语言:javascript
复制
for (Task task : getTaskService().createTaskQuery().taskCandidateGroupIn(candidateGroup).initializeFormKeys().list()) {

task.getFormKey()
....
....
...

}

但是现在出于一些特殊的原因,我们想从HistoricTaskInstance中获得表单键值,我们尝试了几种方法来获得它,但是都失败了。

我们想知道如何从已完成的任务中获得表单键值?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-29 09:29:42

表单键不能用于历史任务。通常,由于任务已经完成,因此不会为历史任务显示窗体。如果任务尚未完成(历史记录包含活动任务和已完成任务),则可以使用历史任务的id来使用表单服务获取表单键。

如果任务已经完成,则需要使用模型api从XML获取表单键:

代码语言:javascript
复制
HistoricTaskInstance historicTask = historyService.createHistoricTaskInstanceQuery().singleResult();

BpmnModelInstance bpmnModelInstance = repositoryService.getBpmnModelInstance(historicTask.getProcessDefinitionId());

org.camunda.bpm.model.bpmn.instance.Task task = bpmnModelInstance.getModelElementById(historicTask.getTaskDefinitionKey());
String formKey = task.getAttributeValueNs(BpmnModelConstants.CAMUNDA_NS, "formKey");
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28174298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档