Drools规则引擎中 如何单独调用一个规则?

毕设向导 课程设计 1

Drools规则引擎中 如何单独调用一个规则?是重写ksession.fireAllRules()方法吗?我是这样实现的的,但是还是不行

ksession.fireAllRules(new MyRuleFilter("222"));
ksession.fireAllRules(new MyRuleFilter("333"));
ksession.fireAllRules(new MyRuleFilter("111"));

class MyRuleFilter implements AgendaFilter{

private String ruleName;
public MyRuleFilter(String ruleName) {
    this.ruleName = ruleName;
}
@Override
public boolean accept(Activation ac) {
    return ac.getRule().getName().contains(ruleName);
}

其中“111” “222” “333” 是规则文件中规则的名字,但是这样调用以后,只有第一个规则被执行了,问题是我想3个规则全部被执行,如何实现?请教各位大神?

回复

共1条回复 我来回复
  • 源码港湾
    这个人很懒,什么都没有留下~
    评论

    RuleNameStartsWithAgendaFilter或者RuleNameEndsWithAgendaFilter

    0条评论

发表回复

登录后才能评论