Drools规则没有解雇

时间:2012-06-07 18:06:10

标签: java rules drools business-rules rule-engine

我需要做的是,如果由lineId 2016标识的KeymarkDocField具有空值,则从fieldOrderNumber 265标识的另一个KeymarkDocField获取值,并设置它。

我有以下规则:

rule "Add Disbursement Date to NLS XML Output"
when
    $modify : KeymarkDocField(lineId == 2016, value == null)            
    KeymarkDocField($disDate : value, fieldOrderNumber == 265)
then
    modify($modify){
        setValue($disDate)
    }
end

所有这些信息都来自xml文件。我查看了XML文件并验证了所有数据是否正确。然而,这条规则不会触发。我是Drools的新手,想知道是否有人能够辨别出我犯的错误。

1 个答案:

答案 0 :(得分:0)

想出来。这是因为lineId返回一个String,而不是int。所以比较失败了。