使用Drool 7.14.0.Final时我有一些疑问。
javacode:
Rule rule = new Rule();
rule.setCouponType("skuCoupon");
kieSession.insert(rule);
kieSession.startProcess("com.coupon.SkuCoupon");
int count = kieSession.fireAllRules();
System.out.println("命中了" + count + "条规则!");
drlcode:
// 查找单品券
rule "May Sku"
ruleflow-group "maySku"
salience sal
when
Rule(sal:maySkuSal);
$rule:Rule(couponType == "skuCoupon");
then
System.out.println("任选商品规则 被执行");
end
// 查找单品券
rule "Price"
//ruleflow-group "price"
salience sal
when
Rule(sal:priceSal);
Rule(couponType == "skuCoupon");
then
System.out.println("商品价格被执行");
end
进程执行重用:
必选商品规则 被执行
商品价格被执行
命中了0条规则!
问题1:“价格”规则未设置规则流组,但此规则已执行。
问题2:kieSession.fireAllRules();结果为0,但实际上执行了两个规则。