关于<bpmn2:userTask id="" activiti:formKey="Testform">中的中的formKey
来源:7-10 动态表单渲染方案

weixin_慕移动0224177
2021-03-01
<bpmn2:userTask id="" activiti:formKey="Testform">
在流程定义的阶段,每一个UserTask要对应一个formKey,而且这个fromKey在客户需求中需要会随时设置.也就是说在流程图设计完之后fomKey可以随时变化.除了在bpmn.js中修改之外.请问老师有什么在后台修改的办法吗?
关于上面的问题,我有一个想法,使用bpmnModel,如下:
List<ActProTasksEntity> processTasks = new ArrayList<ActProTasksEntity>();
ActProTasksEntity actProTasksEntity = null;
String resName = pd.getResourceName();
InputStream resouceStream =repositoryService.getResourceAsStream(pd.getDeploymentId(), resName);
XMLInputFactory xif = XMLInputFactory.newInstance();
InputStreamReader in;
XMLStreamReader xtr;
in = new InputStreamReader(resouceStream, "UTF-8");
xtr = xif.createXMLStreamReader(in);
BpmnModel model = new BpmnXMLConverter().convertToBpmnModel(xtr);
bpmnModel可以方便的对bpmn中的各种元素进行修改.通过activiti中的API,获取源文件的输入流,可以通过已有的bpmn.xml生成一个对应bpmnModel对象.使用这个bpmnModel对象设置formKey非常方便,但有一个问题,我不知道修改之后的bpmnModel如何持久化回到数据库保存这个更改,请问老师有办法将bpmnModel持久化吗?
或者有更简单的方法可以动态修改fromKey.
写回答
1回答
-
汪汪对
2021-03-02
在bpmnjs和activiti表单里存,只是为了演示activiti7的功能
如果想把动态表单发扬光大,可以现在github等地方找个表单设计器
然后把表单与任务id关联上即可
012021-03-04
相似问题