我在处理大量XML消息的企业架构中工作。我们最近被要求对这些XML消息中包含的数据执行一些计算,并在将消息从企业传递到外部消费者之前将一些结果添加到消息头中。我们的架构基于JBossSOA-P,我目前正在评估JBossDrools5.2.0以执行这些消息操作。我知道我可以简单地将XML中的POJO组合起来,对其执行规则,然后添加适当的结果。但是,如果可能的话,我想消除对XML消息结构的编译时依赖性,因为围绕模式的动态要求以及将新编译代码部署到我们的生产环境中的重大障碍(阅读:繁文tape节)。理想情况下,我希望对.drl规则中的原始XML使用XPath评估。一些搜索出现了SXC项目,这
一方面,我有一个我的公司选择采用的PHP应用程序。我们已经为我们的Java应用程序实现了一个规则引擎(Drools)。一切都通过SOAP消息传递通过中间件平台运行。我知道我们将不得不为我们的PHP应用程序做一堆自定义类来处理可以通过规则引擎处理的情况。如何将Drools与我们的PHP应用程序集成?我是否应该坚持使用从PHP应用程序通过我们的ESB到规则引擎并返回的SOAP消息传递? 最佳答案 尽量不要在已经很复杂的系统中添加更多事件部件。我建议您遵循自己的直觉,通过SOAP将要处理的数据发送到Java应用程序。这样您就可以在一个区域
我有一个日程安排问题,每个学生都表达了他对讲座的偏好,并且同时为所有学生生成了类(class)时间表(如果可以的话,以批处理模式)。根据我的阅读和了解,DroolsPlanner非常适合解决此类问题。我将Drools和GEF安装到我的EclipseIDE中。一切都加载得很好。不幸的是,我不知道如何构建一个简单的项目。我在网上查找引用资料并找到了DroolsPlanner示例,它们看起来和工作起来都很棒。但是,除了一些代码片段之外,我没有找到任何好的教程来引导人们完成简单的案例。如何对匹配/安排问题建模,其中3名具有独特时间和类(class)偏好的学生希望注册4门类(class)?我如何
我使用的平台需要Drools规则语言(DRL),但对我来说更方便的是在JavaAPI中创建规则。有什么方法可以在JavaAPI中创建规则,然后将其转换/传输到DRL?感谢回答。 最佳答案 正如Geoffrey提到的,Drools确实有一个用于构建规则的流畅API,但它不在公共(public)API中。您可以使用并且它已经稳定了好几年,但您需要注意,由于引擎中添加的功能,可能会随着时间的推移而发生变化。该API由Drools解析器本身使用。以下是您可以用作示例的一些单元测试:https://github.com/droolsjbpm/
我们尝试使用全新的KIE工作台(以前称为Guvnor)和基于maven的新Artifact切换到Drools6。现在我想使用thisblogpost中描述的系统在第二张图片中(“部署”):通过HTTP从工作台存储库加载规则(虚线箭头,从左侧的HTTP直接进入应用程序)。问题是,我不知道如何将Artifact加载到我的KieServices/KieModule对象中。我基本上不想使用maven,我也无法提供全局的maven的settings.xml的路径作为Java参数,所以这个选项没有了。我认为类似的问题是thisone.正如那里提到的,我也尝试加载一个URL资源,但问题似乎是系统无法
您好,我正在尝试从drools6.3.0中的文件系统加载drl文件。我从drools项目中获得了代码。加载drl文件的代码如下。packageorg.drools.examples.banking;importorg.kie.internal.KnowledgeBase;importorg.kie.internal.KnowledgeBaseFactory;importorg.kie.internal.builder.KnowledgeBuilder;importorg.kie.internal.builder.KnowledgeBuilderFactory;importorg.kie
我想学习drools和maven任何人都可以帮助我提供配置drools和maven的链接并使用它们编写一个基本的helloworld示例。提前致谢 最佳答案 您应该先阅读手册,然后尝试用谷歌搜索。之前也有人问过这样的问题,例如:HowtodeployDroolsFlowandrulesbymywebapplication但无论如何。如果您使用Maven和Spring,这是如何集成它:您首先需要包含Drools依赖项:org.droolsdrools-core${drools.version}org.droolsdrools-comp
我刚刚在Eclipse(版本3.5.2)中安装了Drools插件,我正在尝试运行该插件附带的“HelloWorld”示例。当我运行代码时,出现运行时错误,堆栈跟踪如下:org.drools.RuntimeDroolsException:Unabletoloaddialect'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java:org.drools.rule.builder.dialect.java.JavaDialectConfiguration'atorg.drools.compiler.Package
有谁知道如何解决这个问题?Cannotcompletetheinstallbecauseoneormorerequireditemscouldnotbefound.Softwarebeinginstalled:JBossRuntimeDroolsDetector6.3.0.Final(org.jboss.tools.runtime.drools.detector.feature.feature.group6.3.0.Final)Missingrequirement:JBossRuntimeDroolsDetector6.3.0.Final(org.jboss.tools.runtime
背景:我正在开发一个应用程序,它根据一组drools规则将输入对象转换为两个输出对象之一。输出对象直到运行时才为人所知,它是在要执行的第一个规则中创建的。这是创建输出对象的规则和示例转换规则:rule"Initialization"dialect"java"salience1000no-looptruewhent:Trade()thenif(t.getTran().getInsType().equalsIgnoreCase("EEO")||t.getTran().getInsType().equalsIgnoreCase("EEF")){insert(newOption());}els