0
我在運行時加載規則,但是當我調用fireAll時,也觸發了在規則之前添加的事件。有沒有辦法只添加規則添加後發生的事件規則?Drools在創建規則之前規則觸發事件
我在運行時加載規則,但是當我調用fireAll時,也觸發了在規則之前添加的事件。有沒有辦法只添加規則添加後發生的事件規則?Drools在創建規則之前規則觸發事件
在添加規則之前清除工作內存。 API使您可以通過一個簡單的循環來檢索和收回所有事實。
或者,在插入新規則之前設置一個議程過濾器。運行fireAllRules,刪除過濾器並像以前一樣繼續。
我不一定想要失去所有的事實,我只是不希望新添加的規則在舊事實上開火。另一條規則可能有可能在將來使用舊的事實(與新的事實相結合)。 – ventsyv
除非您執行無狀態,否則您一定會產生一些不一致。但請參閱我的答案。 – laune