Camunda:无法解析专用网关的标识符

时间:2017-12-28 16:54:41

标签: html xml bpmn camunda

我尝试将html表单用于定义变量的用户任务,以便在以下独占网关中选择一个sequenzflow。 HTML:

<div class="form-group">
    <div class="radiobutton">
        <label>
            <input cam-variable-name="altneu" cam-variable-type="String" type="radio" name="altneu" class="form-control" value="NEU"/>
            Neukunde
        </label>
        <label>
            <input cam-variable-name="altneu" cam-variable-type="String" type="radio" name="altneu" class="form-control" value="ALT"/>
            Altkunde
        </label>
    </div>
</div>

Sequenceflows:

<bpmn:sequenceFlow id="SequenceFlow_0a0vwxr" name="Kunden-stammdaten sind vorhanden" sourceRef="ExclusiveGateway_0vokx46" targetRef="ExclusiveGateway_074f3z1">
<bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${altneu == 'ALT'}]]></bpmn:conditionExpression>
</bpmn:sequenceFlow>

<bpmn:sequenceFlow id="SequenceFlow_1cwjztj" name="Kundenstammdaten sind nicht vorhanden" sourceRef="ExclusiveGateway_0vokx46" targetRef="Task_1peelfz">
<bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${altneu == 'NEU'}]]></bpmn:conditionExpression>
</bpmn:sequenceFlow>

执行时出现此异常:

  

提交任务表单时发生错误:   无法提交任务表单713c798f-ebeb-11e7-9cb1-dcfe074be7ab:表达式中使用的未知属性:$ {altneu =='NEU'}。原因:无法解析标识符'altneu'

1 个答案:

答案 0 :(得分:0)

我在任务列表的帮助下用camunda bpm 7.8测试了你的表单并得到了消息,无法实例化具有相同名称的变量。这意味着,引擎无法识别同一输入变量的两个或多个相同变量名称的出现。因此引擎实例化变量&#34; altneu&#34;因为它找到&#34; NEU&#34;的输入。然后它找到&#34; altneu&#34;再次尝试再次实例化&#34; altneu&#34;为&#34; ALT&#34;。但是&#34; altneu&#34;已经存在。

请参阅the controls section of camunda's manual。似乎没有对单选按钮的直接支持。如果可能,您可以使用a select

ok

另一种选择可能是复选框。

ok == true

另外还有camunda的提示

  

如果不支持HTML控件,则需要编写自定义JavaScript。

有效。