我正在Eclipse中使用Drools,我有一个规则需要在我定义的每个议程中触发(这是非常重要的规则)。
首先,我尝试不为该规则设置议程,但仅在最后一个议程结束时才执行。
因此,我想到的唯一的事情就是为每个议程定义一个规则,即,在所有议程中都重复相同的规则,这不是最有效的解决方案。
这是正常问题吗?有更好的解决方案吗?
谢谢。
答案 0 :(得分:0)
只需进行快速测试,就可以使用以下设置对我(Drools 7.14.Final)正常工作:
1)没有议程组的规则
2)具有议程组“ Group1”的规则
3)议程组“ Group2”的另一条规则
我用以下代码调用规则:
<input type="text" title="Enter Your Name" id="txtName" />
所调用规则的最终结果是:
规则2)
规则1)=>第一次议程组通话结束
规则3)
规则1)
在此示例中,我的规则1)确实触发了两次,所以对我来说,它看起来像您想要的内容。请注意,在我的情况下,我需要使用 update ,因为我的规则条件位于其他规则未修改的属性上,因此如果没有该 update ,则该规则将获胜不会第二次开火。 同样要注意的是,“通用”规则似乎总是会在当前议程小组之后生效。您的情况有问题吗?