0

この if ステートメントでエラーが発生します。

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

データセット フィールド参照が正しい値を返していることを再確認しました。値の 1 つまたは両方が null の場合でも、テストは機能するはずです。

4

1 に答える 1

0

「条件がブール値を生成しなかった場合」というエラーは、if要素でテストを設定した方法に問題がないため、実際にはやや誤解を招くものでした。ここに問題があります

その条件下でアクションが不要な場合は、<then>またはサブ要素のいずれかを省略できます。<else>

このifコマンドには、 または のいずれかまたは両方が子として必要thenですelse。この場合、 の本体として使用されたコマンドifは条件として扱われ、(ブール値の) 戻り値を持たないことがエラーの原因です。

これは機能します:

<if test="equal" value1="{$m.parent_id}" value2="{$var.tasks-menu-id}">
    <then>
        <math:increment field="var.tasks-children"/>
    </then>
</if>
于 2012-09-25T01:34:03.400 に答える