问题标签 [guvnor]
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.
drools - 规则的异常执行结果 (Drools, Guvnor, JBPM5)
我是 BPM 新手,使用 JBPM5.4 安装程序。
下面是从 Guvnor 获取的我的 drl 源代码。当触发规则时出现错误。
堆栈跟踪:
drools - 使用 Drools Guvnor 进行规则开发和部署管理
介绍
Drools Guvnor 拥有自己的版本控制系统,在生产使用中允许应用程序的用户修改规则和决策表,以适应他们业务的变化。然而,相同的资产继续存在于开发版本控制系统中,在该系统中开发了应用程序的新功能。
这篇文章是为了在使用 Drools 规则和 Guvnor 时寻找有关规则开发和部署的见解/想法/经验。
以下是我一直困惑的一些关键概念。
部署到 Guvnor
首先,将 drl 文件和决策表部署到生产环境的最佳方式是什么?只是简单地将它们放在一个 zip 包中,然后解压缩到 Web-Dav 文件夹?我在 Drools 中浏览的内容,我还没有找到一种方法来一次导入多个文件。不过,事实模型可以作为 jar 存档添加。Guvnor 似乎有某种 REST API,但使用它需要自定义部署脚本。
更换管理层
其次,一旦应用程序投入生产,用户可能希望更改决策表中的值,以便为高级客户等设置更高的折扣百分比。这一切都很好,很花哨,直到开始开发应用程序的 2.0 版本。
现在我们现在拥有的是
- 版本控制系统中的 drl 文件和决策表
- 用户修改的生产环境中的 drl 文件和决策表,由 Guvnor 版本化
现在我们正处于从 Guvnor 取回规则和决策表的阶段。Web-Dav 文件夹再次是最适合此的,还有哪些其他选项?
今天的合并工具甚至可以处理 Excel 文件差异,但在大型项目中对我来说听起来像是一个合并地狱。
保持事实模型向后兼容
另一个主题是事实模型完整性。对于假定的 2.0 版本,开发人员总是希望进行重构并将整个事实模型颠倒过来。尽管如此,它仍必须保持与以前版本的向后兼容,因为可能存在依赖于此的用户修改规则。对此有什么建议吗?只是保持事实模型简单干净?提前计划/建议用户想要改变什么?
概括
我确信我不是第一个,也肯定不是最后一个考虑使用 Drools 和 Guvnor 进行部署和变更管理的选项。所以,我想听到的是关于处理这些情况的一些最佳(也是最坏的)做法的评论、讨论、提示等。
谢谢。
drools - 如何检查 guvnor web 决策表中的等价性?
我有两个事实要插入到我的流口水会话中。我想检查以下内容:
(shipment1 != null && shipping1.shipToCustomerNo == waypoint1.shipToNumber) || 装运1 == null
如何在基于 web 的 guvnor 决策表中添加此条件?我尝试过使用谓词,waypoint1 和 shipping1 是成功插入会话的绑定变量。如果我使用谓词并添加上面的内容,我的测试用例工作正常,但是当我在我的 java 应用程序中实际运行这些规则时,即使数据是等价的,条件也永远不会评估为真。我尝试了许多不同的方法来构造这个查询。下面是生成的源码:
drools - Drools 决策表 - 一列 - 两个字段
假设我们有一些与一个或多个代码相关的类:主要和次要。此类的每个对象都至少有主代码,并且可以有无限数量的辅助代码:
我想在 Drools 决策表中制定一个规则,允许我检查列中给出的值是否等于 mainCode 或包含在 secondaryCodes 中。所以我需要一列来记录与两个不同领域相关的两条规则。
甚至可能吗?
database - 是否可以将数据库表作为决策表导入 Drools Guvnor?
我们将定期在这个数据库表中输入数据,我想知道是否可以将这些数据及时导入 Drools Guvnor?
drools - Guvnor Drools 5.6.Final:使用 guvnor 部署最新规则时无法动态更新知识库
使用 Guvnor Drool 5.5 时,相同的代码正在工作,在我更新到 drool 5.6.Final 之后,它停止了知识库的运行时更新。
请帮我。
drools - 如何从流口水开始
我是drools和java的新手。我想设置guvnor并使用数据库来存储规则。我应该如何开始?
我一直试图弄清楚,但还没有清楚地了解如何开始。
tomcat - 部署 kie-wb-distribution-wars-6.0.1.Final-tomcat7 的问题
我在部署 kie-wb-distribution-wars-6.0.1.Final-tomcat7 时遇到了一些问题。我遵循了 Michael Anstis 的指南(README),但该应用程序给我带来了一些问题。
我附上日志。
对不起,我要疯了。
drools - 如何在 kie 工作台中修改 guvnor
我有个问题。我有一个修改版的 guvnor 5.2(我自己)。我会用我的替换 Kie-wb 中的实际版本的 guvnor。我可以这样做吗?最终有一个文件夹,我可以在其中修改 guvnor 的文件。我在 kie 项目中没有找到 guvnor 文件夹。否则我如何修改菜单以在现有的 kie 中添加我的功能?
感谢所有人,我很抱歉英语不好:)
java - StatelessKnowledgeSession 焦点议程
我在 drools 中执行规则时遇到问题,当我使用 StatefulKnowledgeSession 执行规则时没有问题:
但我尝试在 StatelessKnowledgeSession 中执行相同的规则,因为它是一个多线程进程,但我无法集中议程组,结果会有所不同。
我的知识库在执行期间不会改变。
怎么能做到这一点?
谢谢!!