问题标签 [drools]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2188 浏览

spring - ETL、Esper 还是 Drools?

题环境涉及JavaEE、Spring

我正在开发一个可以为传入消息启动和停止任意 TCP(或其他)侦听器的系统。可能需要对这些消息进行身份验证。这些消息需要解析并存储在其他一些实体中。这些实体对它们存储的字段进行建模。

因此,例如,如果我的 property1 可以有两个文本字段 FillLevel1 和 FillLevel2,我可以在 TCP 上接收消息,其中两个填充级别在文本中指定为 F1=100;F2=90

稍后当我开始接收消息 F1=xx;F2=xx;F3=xx 时,我可以添加另一个字段,例如 FillLevel3。但这是系统建模者有意识的决定。

我的问题是您认为什么更好用于解析和存储消息。ETL(使用 Pantaho,在其他系统中使用)在其中存储原始消息并使用任务执行器一一使用它们并根据您的规则存储转换后的消息。

可以使用 Espr 或 Drools 来做同样的事情,存储规则并使用计时器执行它们,但我不确定通过制定规则可以获得多大的动态(它们必须由最终用户在正在运行的系统中制定,最好是在大多数情况下)用户友好的方式,即没有脚本或代码,只有 GUI)

最终用户应该能够更改解析规则。最终用户也可能希望更改存档数据(例如,在上面的示例中,如果添加了新的 FillLevel 值,则希望将 FillLevel=-99 放在以前的值中以生成数据持续的)。

请大家多多指教,我感觉这个问题需要稍微修改一下。

谢谢

0 投票
1 回答
1433 浏览

drools - Drools 5 使用 jaxb 将其暴露给 Web 应用程序和 Web 服务(SOAP)

我们有reqmt。我们需要用 ESB 和 web 应用程序同时公开 drools 5。虽然我已经找到了用 eclipse 运行 drools 的方法,但是发现目前很难用相同的 web 应用程序配置 Drools 5 并在未来将其转换为 esb . Guvnor 和 Drool-Server 不仅足以帮助我,谷歌搜索也没有帮助,甚至弹簧支持也不可用。

任何帮助将不胜感激......谢谢

0 投票
1 回答
3933 浏览

drools - 使用带有动态决策表的 drools 专家

这就是我想做的事情。

我想把“规则”放在数据库表中。这有点像 drools xls 决策表格式,只是所有规则都是表中的行。这样我可以轻松地修改规则。我需要把它放在一个表格而不是 xls 中,因为我的规则可能会经常改变。流口水可以吗?我是否可以使用从数据库(而不是 DRL 或 xls 文件)检索的规则构建知识库,并且每次规则更改时,我都可以从头开始重建知识库(或者可能只是知识库的一部分,基本上只更新那些已更改的规则..)

0 投票
1 回答
1874 浏览

drools - Drools 中的 DSL 和业务规则创建问题

我正在使用带有 Drools 插件的 Eclipse 来创建规则。我想创建业务规则,主要目的是尝试为用户提供一组他可以用来创建规则的选项。例如:如果 Apple 只能有 3 种颜色:我想提供一个像下拉菜单这样的选项,以便用户可以事先知道他可以在他的规则中使用哪些选项。是否可以?我正在创建一个 dsl,但仍无法为业务规则提供上述功能。我在实现基本 dsl 时也出错。在我的 RuleRunner class() 中添加 dsl 的代码如下

InputStream ruleSource = RuleRunner.class.getClassLoader().getResourceAsStream("/Rule1.dslr");

InputStream dslSource = RuleRunner.class.getClassLoader().getResourceAsStream("/sample-dsl.dsl");

//加载规则,使用DSL

addRulesToThisPackage.addPackageFromDrl(new InputStreamReader(ruleSource),new InputStreamReader(dslSource));

我的工作目录中有 sample-dsl .dsl 和 Rule1.dslr。

将 dsl 添加到包时遇到错误(最后一行)

错误堆栈:

线程“主”java.lang.NullPointerException 中的异常

根据在线文档,我的 dsl 文件具有基本映射。

我创建的 dsl 规则是:

扩展器样本-dsl.dsl

规则“A状态改变B状态”

结尾

我在 Eclipse 中创建了 DSL。

我添加的要加载到我的包中的代码是否正确?还是我错过了什么????

好像我的程序无法找到 dsl?

请帮忙。您能指出我创建用户友好业务规则的正确方向吗?

谢谢。

Ĵ

0 投票
1 回答
571 浏览

drools - 将 .brl 规则加载到规则库中

我正在使用 dsl 创建业务规则(.brl 规则)。如何将 .brl 规则加载到我的知识库中?如何从 .brl 文件转换为 .dslr 文件???我无法找到任何帮助。还是有不同的方式来加载 brl 文件?请帮忙。

谢谢FM

0 投票
1 回答
765 浏览

drools - 如何使用 Drools Flow 管理角色和生成 Web 表单?

我正在为休假申请批准创建一个工作流(集成到 Java Web 应用程序中)。工作流程如下:

为员工提出请假申请。

案例1:如果员工的角色不是团队领导。该请求将发送给员工的团队负责人。如果团队负责人拒绝,则工作流程结束。如果团队负责人批准,请求将转发给经理。

案例2:如果员工的角色是团队领导。请求直接发送给 Manager。

当经理批准/拒绝申请时,工作流程结束。在批准/拒绝时,用户需要输入评论。

我需要为用户输入生成网络表单。选项可以是动态的,并且应该在工作流本身中定义。我怎样才能做到这一点?根据不同角色管理工作流的不同方向的正确方法是什么?

欢迎任何想法/建议。如果有人可以指导我使用示例/示例代码来实现这一点,那将会很有帮助。

0 投票
2 回答
3965 浏览

java - 如何在 Java 中动态构建 Drools 规则?

如何在 Java 中动态构建 Drools 规则而不是提供静态 drl 文件?

我在 xml 中定义了一组匹配规则,我需要对其进行解析并能够在运行时重新加载它。有没有办法动态构建 Drools 规则?在文档中找不到它。

0 投票
1 回答
456 浏览

java - 用于复杂显示值查找的 Drools

这个问题的目的是评估使用 Drools 在 Web 应用程序中进行复杂的显示值查找处理的合理性。我的任务是检索存储在供应商数据库中的覆盖信息(来自保险单),并在自定义 Web 应用程序中显示信息。有 100 个覆盖范围,每个覆盖范围要显示的显示值可以基于每种覆盖类型的 4 或 5 个不同列的组合。我认为可能有多达 40 种不同类型的保险。

话虽如此,流口水或决策树机制会提供一种处理此问题的好方法吗?我应该指出,我们很可能需要经常添加/修改覆盖信息,而吸引我使用这种机制的一件事是 BA 可以帮助保持规则的最新状态。但是,我担心此选项可能会对速度产生不利影响。目前,我有一个工作原型,它使用数据库结合数据库中的反射和 XML,以确保映射成功完成。

如果您也能想到其他选择,我对它们持开放态度。

谢谢,杰里米

0 投票
3 回答
958 浏览

java - JAAS / JAAC、DROOLS 或自定义

我一直在使用我自己的内部自定义授权模型来评估用户是否有权查看、编辑、删除或创建项目。例如,我使用它的一个地方是确定用户是否有权查看资源。我有一些限制,例如项目是否发布,用户是否属于必要的组/角色等。

我将所有这些信息存储在一个数据库中,我在其中审核权限以及谁更改了给定实体的权限。为了评估用户是否有权限,我有一个 Hibernate 事件侦听器,它获取当前用户和其他上下文信息并针对实体进行评估。

这是一个好的安全模型吗,JAAS / JAAC 或 DROOLS 会在这里更好地工作吗?

0 投票
2 回答
2481 浏览

java - 从 BRMS 动态加载规则

我正在尝试将我的规则从 jboss-brms 上传到我的 Eclipse,以便针对工作内存运行它。以下是我的代码和 change-set.xml 文件,我收到以下错误堆栈。我已经启动了 jboss-server 并且连接正确。但我无法弄清楚我得到的错误,我的变更集和代码是否正确?该错误表示它无法解析 change-set.xml 并且无法连接到服务器。我刚刚在我的变更集文件中指定了 url 路径以及它应该寻找的文件类型。我还需要合并什么才能连接到服务器???我在文档中找不到太多帮助。

请帮我。我对 Drools 比较陌生。

我的 Runner 类中的代码:

我的 change-set.xml 文件:

错误堆栈:

请帮我。

谢谢