将drools引导决策表编译成规则
Posted
技术标签:
【中文标题】将drools引导决策表编译成规则【英文标题】:Compile drools guided decision table into rules 【发布时间】:2015-08-03 09:46:42 【问题描述】:我想知道如何使用 Drools 运行时在 Java 应用程序中使用 Drools Workbench 中的引导决策表。这个想法是,用户将在工作台中定义规则、流程和一些决策表,这些将被 drools 运行时拾取。
不过,出于某种原因,我无法弄清楚如何在 drools 中执行此操作,因为它将表存储为 gdst 文件,并且似乎无法编译为 drools。
使用流口水,有没有办法: - 像使用 excel 决策表一样执行 gdst 文件? - 还是在规则中编译一个gdst文件?
我一直在寻找解决方案,但找不到具体的例子...:/
【问题讨论】:
【参考方案1】:好的,基本上,我们可以很容易地从引导决策表中生成流口水规则。例如:
// load the data from the GDST file, for example:
String decisionTableXml = new String (
Files.readAllBytes(
Paths.get("./someDecisionTable.gdst") ) );
// parse the table model
GuidedDecisionTable52 model = GuidedDTXMLPersistence.getInstance().unmarshal( decisionTableXml );
// compile it into drools rules
String droolsRules = GuidedDTDRLPersistence.getInstance().marshal( model );
// next, save droolsRules into a file and/or load it into drools as a normal rule
这是指导决策表的一个简单示例,但决策树可能存在相同的实用程序,... 从那里,您可以使用 Drools Expert 运行时编排任何 Drools Workbench 资产。更好的解决方案总是受欢迎的;)
【讨论】:
ps:drools-workbench-models-guided-dtable 是您要为此导入的 maven 依赖项。 如何将 drl 文件转换为指导决策表?逆转? @凯文以上是关于将drools引导决策表编译成规则的主要内容,如果未能解决你的问题,请参考以下文章