Drools 无法解析记录器

Drools unable to resolve logger

我有一个类似于下面的规则。当我在规则的 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'

在'when' 块中,您可以定义条件。如果您想捕获插入到 kiesession 中的事实,那么您可以使用 RuleRuntimeEventListener。