を支配しますルールは解雇され、私の犬は赤ちゃんになる予定です。それでは、2番目のルールが実行され、それでもtrueが出力されます(条件が偽であっても)。Droolsのは、私はDroolsの持つ奇妙な問題を抱えている流れ
すべてのルールを実行した後にテストすると、myDataのmyDogは赤ちゃんに設定されます。
私はここで間違っていますか?なぜ第2のルールは解雇されるのですか?セッション(私の場合はステートフル)の問題ですか?
私はmyData:myDogをどこかで変更すると言いたいと思いますが、どこがわからないのですか?
私の質問は私には分かりませんが、私には明らかです。あなたはあなたの最初のルールに
then
dog.setIsBaby(true);
update(dog)
を行うと、Droolsのができるよう
when
dog : Dog(isBaby == false)
myData : MyData(myDog == dog)
のようなあなたの二番目のルールのルールは、このように書かなければならないときを書き直す必要が
多くの私はそれを試みるつもりです –