我目前在drools(5.6)方面存在问题。我们试图让我们的规则引擎安全地分解和死锁,但是当我们允许用户直接输入drools规则时,这很难。
我们当前的问题:在条件中添加某些内容时,eval(myAPI.myMethod("abc"));
会引发异常。然而,这会导致流涎之后不能顺利运行。
当我们试图让一切恢复正常时(撤回对象和事实句柄并从数据库重新加载它们,我们不断坚持ksession),我们得到一个锁定问题:
当调用ksession.retract(eventObject);
时没有任何反应并且调试显示,它被锁定在NamedEntryPoint.retract(...):548
我已经尝试了许多事情来规避这一点,但我不知道如何。那里有人,也许有答案吗?像一些config-param,这限制了锁定时间,一些方法,允许手动解锁,或只是一些东西,允许完全关闭当前会话(dispose不是一个选项,因为它声明,这可能会导致内存泄漏,如果不是在清理所有东西之前使用过。)
有什么想法吗?感谢致敬, 凯