Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如何在 Drools 的 when/Lhs 子句中获取规则名称?
不要将 id 附加到规则的名称上,使用一个将所有感兴趣的规则 id 定义为常量的类并使用这些常量,这样您还可以非常轻松地跟踪引用所有这些 id 的位置。
rule "MyRule" when eval((com.test.Rules.RULE1_ID) == 123) then ... end
或者,如果您只有几条规则,您可以使用 flags 部分User来指示是否已为相应用户执行规则,然后您的检查将如下所示User(!myRuleHasRun)。
User
User(!myRuleHasRun)