Drools 规则流程设计
Posted
技术标签:
【中文标题】Drools 规则流程设计【英文标题】:Drools rule flow design 【发布时间】:2014-04-17 20:30:26 【问题描述】:我最近开始研究流口水。我只是设计一个简单的应用程序来更好地理解它。
我有一个.drl
文件,其中包含一些“when”、“then”格式的规则。我在.bpmn
文件中设计了一个流程图(都用于同一个项目)。我不想在我的流程图中明确设置约束。
我可以在.drl
文件中为我的流程图设置约束吗?
因此,当我一起运行所有进程和规则时,我的.drl
文件应该为我的.bpmn
设置约束。我尝试通过使用一些全局变量来做到这一点。不过我对工作并不满意。
如果有人能帮助我,那就太好了。
另外,是否可以为具有我感兴趣的属性的规则流设计自己的块?这只是出于好奇。
谢谢
【问题讨论】:
【参考方案1】:如果您想在流程中评估 .drl 文件中的一组规则,则应使用规则任务,其中规则任务的 ruleflow-group 属性与 ruleflow-group 规则头属性匹配(因此那些规则如果进程到达规则任务节点将激活。
如果您想从流程中传递参数,您可能应该在规则任务上使用入口脚本,在执行规则之前将相关数据插入工作内存中。如果您想从规则评估中获得结果,您可能需要在 on-entry 脚本中插入一些对象(这是您的流程中的一个变量),在规则中确保您在该对象上设置结果,然后在退出脚本检索该值,以便您可以使用 if(例如将其存储在变量中)。
【讨论】:
以上是关于Drools 规则流程设计的主要内容,如果未能解决你的问题,请参考以下文章