工作环境:Drools 5.5.0.FINAL,JDK1.7
我正在开发一个 Eclipse 插件,它可以在 Drools 的帮助下分析一些数据。我已经制作了一个 Eclipse 视图,它应该保存并显示加载的“Drools-rules”。是否有一种优雅的方法来加载规则名称等信息?
在处理“then-clause”时准备一个 Rule-bean 并用信息填充它并不让我觉得这是正确的方法。
有什么建议么?
工作环境:Drools 5.5.0.FINAL,JDK1.7
我正在开发一个 Eclipse 插件,它可以在 Drools 的帮助下分析一些数据。我已经制作了一个 Eclipse 视图,它应该保存并显示加载的“Drools-rules”。是否有一种优雅的方法来加载规则名称等信息?
在处理“then-clause”时准备一个 Rule-bean 并用信息填充它并不让我觉得这是正确的方法。
有什么建议么?
添加资源后,您可以通过访问 KnowledgeBuilder 界面从所有知识包中获取规则。
例如
KnowledgeBuilder knowledgeBuilder = KnowledgeBuilderFactory
.newKnowledgeBuilder(knowledgeBuilderConfig);
knowledgeBuilder.add(ResourceFactory.newClassPathResource(ruleFile),
ResourceType.DRL);
Collection<KnowledgePackage> packages = knowledgeBuilder
.getKnowledgePackages();
for (KnowledgePackage knowledgePackage : packages) {
for (Rule rule : knowledgePackage.getRules()) {
System.out.println(rule.getName());
}
}