我有一条规则类似于以下规则。当我在规则的THEN部分中使用logger.debug时,它起作用了,而在WHEN部分中却没有使用。
有什么想法吗?
package com.util;
import com.rulemodel.*;
global org.slf4j.Logger logger;
rule "My rule"
dialect "mvel"
when
$t : TransxnFact()
$obj : BizObj((acType.equalsIgnoreCase("Check") && $t.getSubType().equalsIgnoreCase("TWO")) )
then
insert( new XXFact($t.getId() ) )
logger.debug($t.getId()+ "fact inserted")
logger.debug($x.getAcType())
end
我收到以下错误-无法解析ObjectType'logger.debug'
答案 0 :(得分:1)
在“ when”块中,您可以定义条件。如果要捕获在kiesession中插入的事实,则可以使用RuleRuntimeEventListener。