Aviarc工作流错误“CommandException:如果条件没有产生布尔值:getArgument返回1”

时间:2012-09-25 01:34:03

标签: aviarc

此if语句出错:

<if test="equal" value1="{$m.parent_id}" value2="{$var.tasks-menu-id}">
    <math:increment field="var.tasks-children"/>
</if>

我已经仔细检查了数据集字段引用是否返回了正确的值,即使其中一个或两个值为null,测试也应该有效。

1 个答案:

答案 0 :(得分:0)

“If条件没有产生布尔值”错误实际上有些误导,因为我在if元素中设置测试的方式没有任何问题。 Here is the problem

  

如果在该条件下不需要任何操作,则可以省略<then><else>子元素。

if命令要求thenelse中的一个或两个作为其子项。在这种情况下,用作if正文的命令被视为条件,错误是由于它没有(布尔值)返回值。

这有效:

<if test="equal" value1="{$m.parent_id}" value2="{$var.tasks-menu-id}">
    <then>
        <math:increment field="var.tasks-children"/>
    </then>
</if>