0
rule "STANDARD - set available application"
salience(2)
when
accumulate (Application($priority : priority, running == false), $highestPriority : min($priority))
then
System.out.println("set app: "+$highestPriority);
end
我的代码在上面。我的目标是找到运行==错误的应用程序,并获得这些应用程序的最高优先级(最高值为最低值),但是此规则触发所有应用程序并忽略我的状况。思考???如何根据条件和组类一起累积在Drools中
还没有彻底检查您的替代解决方案,最有可能是这个问题的最佳解决方案。但根据我的理解,OP发布的代码是正确使用累积模式,所以我很想知道为什么它不起作用。有什么线索? – kaskelotti
你如何插入你的事实并解雇你的规则?你插入了所有的事实,然后解除规则?或者你是否在每次插入后触发规则? –
如果我理解正确,你说的是OP发布的累积函数是正确的,但是如果他/她没有将所有事实同时传递给WM,并且用所有事实发射规则,它就无法工作。这就说得通了。 – kaskelotti