-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
None
-
2022 Week 50-02 (from Dec 12)
-
NEW
-
NEW
-
---
-
---
The contents of the my drl file are as follows:
rule "modify dt2 rule" salience 100 enabled true ruleflow-group "group_a" lock-on-active true dialect "mvel" when dt1 : Dt1(a == 1) dt2 : Dt2( ) then modify( dt2 ) { setT("YES") } end rule "b_1" salience 96 enabled true ruleflow-group "group_b" lock-on-active true dialect "mvel" when dt1 : Dt1( ) dt2 : Dt2( ) eval(dt2.getT()=="YES") then System.out.println(""); end rule "b_2" salience 95 enabled true ruleflow-group "group_b" lock-on-active true dialect "mvel" when dt2 : Dt2( ) eval(dt2.getT()=="YES") then System.out.println(""); end
Fact Dt1:
public class Dt1 implements java.io.Serializable{ private java.lang.Integer a; private java.lang.Integer b; // seter geter }
Fact Dt2:
public class Dt2 implements java.io.Serializable{ private String t; // seter geter }
When the input parameters are Dt1=
{"a":1}and Dt2:{} , i fire rule group "group_a" and "group_b", rule "b_1" will not be triggered, but rule "b_2" will be triggered, it`s very strange. Why is it not triggered when I add a condition Dt1 ?