BPMN 2.0 用户任务表单可移植性
BPMN 2.0 user task forms portability
我遇到了 BPMN 2.0 可移植性的障碍。我们一直在使用 Activiti Eclipse 插件来编辑方案,并且在某种程度上它运行良好。然后我们遇到了Activiti Eclipse插件编辑器无法添加边界错误事件的问题。因此,我们尝试使用 Camunda Eclipse 插件,并且能够添加错误边界事件。
我们使用Activiti引擎来实际执行这些场景。
现在,使用这两个编辑器,我注意到它们表示用户任务表单的方式不同:
<userTask id="usertask3" activiti:formKey="choice" name="handle error">
<extensionElements>
<!-- This is produced by Activiti Eclipse plug-in editor. -->
<activiti:formProperty id="ut" name="ut" type="string" variable="ut">
<activiti:value id="u0" name="u0"/>
<activiti:value id="u1" name="u1"/>
<activiti:value id="u2" name="u2"/>
</activiti:formProperty>
<!-- This is produced by Camunda Eclipse plug-in editor. -->
<activiti:formData>
<activiti:formField id="nextAction" label="Next action" type="string">
<activiti:properties>
<activiti:property id="task1" value="task1"/>
<activiti:property id="task2" value="task2"/>
<activiti:property id="task3" value="task3"/>
</activiti:properties>
</activiti:formField>
</activiti:formData>
</extensionElements>
<incoming>_5</incoming>
<incoming>_10</incoming>
<incoming>_12</incoming>
<outgoing>_8</outgoing>
</userTask>
在我看来,Activiti 引擎忽略了 Camunda Eclipse 插件编辑器保存的内容。
我很困惑为什么用户表单有两种不同的表示形式?这不规范吗?
用户表单不是 BPMN 标准的一部分。
如您所见,与表单相关的标签位于 extensionElements
标签下,属于使用前缀 activiti
.
的特定命名空间
extensionElements
标签是 BPMN 标准的一部分(参见 BPMN 标准 2.0.2 的第 8.2.3 节或 XML schema),其目的是允许供应商对标准进行特定扩展(例如表格)。
Camunda 是 Activiti 的一个分支,我认为他们可能对那些特定的扩展点做了一些修改,导致一些不兼容。
我遇到了 BPMN 2.0 可移植性的障碍。我们一直在使用 Activiti Eclipse 插件来编辑方案,并且在某种程度上它运行良好。然后我们遇到了Activiti Eclipse插件编辑器无法添加边界错误事件的问题。因此,我们尝试使用 Camunda Eclipse 插件,并且能够添加错误边界事件。
我们使用Activiti引擎来实际执行这些场景。
现在,使用这两个编辑器,我注意到它们表示用户任务表单的方式不同:
<userTask id="usertask3" activiti:formKey="choice" name="handle error">
<extensionElements>
<!-- This is produced by Activiti Eclipse plug-in editor. -->
<activiti:formProperty id="ut" name="ut" type="string" variable="ut">
<activiti:value id="u0" name="u0"/>
<activiti:value id="u1" name="u1"/>
<activiti:value id="u2" name="u2"/>
</activiti:formProperty>
<!-- This is produced by Camunda Eclipse plug-in editor. -->
<activiti:formData>
<activiti:formField id="nextAction" label="Next action" type="string">
<activiti:properties>
<activiti:property id="task1" value="task1"/>
<activiti:property id="task2" value="task2"/>
<activiti:property id="task3" value="task3"/>
</activiti:properties>
</activiti:formField>
</activiti:formData>
</extensionElements>
<incoming>_5</incoming>
<incoming>_10</incoming>
<incoming>_12</incoming>
<outgoing>_8</outgoing>
</userTask>
在我看来,Activiti 引擎忽略了 Camunda Eclipse 插件编辑器保存的内容。
我很困惑为什么用户表单有两种不同的表示形式?这不规范吗?
用户表单不是 BPMN 标准的一部分。
如您所见,与表单相关的标签位于 extensionElements
标签下,属于使用前缀 activiti
.
extensionElements
标签是 BPMN 标准的一部分(参见 BPMN 标准 2.0.2 的第 8.2.3 节或 XML schema),其目的是允许供应商对标准进行特定扩展(例如表格)。
Camunda 是 Activiti 的一个分支,我认为他们可能对那些特定的扩展点做了一些修改,导致一些不兼容。