sto avendo un problema strano con sbava:sbava legge di flusso
ho le seguenti regole:
rule "is my dog a baby?"
ruleflow-group "dog"
salience 10
when
dog : Dog(age <1)
then
dog.setIsBaby(true);
end
rule "baby dog"
ruleflow-group "dog"
salience 9
when
myData : MyData(myDog.isBaby() == false)
then
System.out.println(myData.getMyDog().getIsBaby());
end
inserisco nella mia sessione myData e myData.getMyDog()
, dove myData.getMyDog.isBaby==false
La prima la regola è licenziata e il mio cane è impostato per essere un bambino. Poi viene sparato il secondo e anche quello vero (anche se la condizione doveva essere falsa)
E quando provo dopo aver attivato tutte le regole, myDog in myData è impostato per essere un bambino.
Cosa sto facendo di sbagliato qui? Perché viene licenziata la seconda regola? è il problema nella sessione (stateful nel mio caso)?
Penso di aver bisogno di dire che modifico myData: myDog da qualche parte, ma non sono sicuro di dove.
Spero che la mia domanda sia chiara, se non mi dite.
Thx molto ho intenzione di provare che –