问题标签 [drools-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.

0 投票
1 回答
159 浏览

builder - jbpm 表单构建器的“IO 数据”搜索仅显示默认包中的进程

问题

我在 guvnor 中嵌入了表单生成器。当我从 guvnor 创建一个新的表单定义并为表单定义提供包时,我仍然看不到该包中的进程。我可以在该搜索中获得的唯一进程来自 DEFAULT 包。

期望

我只想从创建表单定义时在弹出屏幕中提供的包中获取进程。

环境

我正在使用 drools-guvnor 5.4.0.Final 和从以下路径下载的 jbpm-form-b​​uilder.war。

https://repository.jboss.org/nexus/content/groups/public-jboss/org/jbpm/jbpm-form-b​​uilder-distribution/5.4.0.Final/

0 投票
1 回答
425 浏览

forms - 为什么 drools 5.4 文档没有说明 JBPM FORM BUILDER 和与 Guvnor 的集成

我已经搜索了很多关于 jbpm-form-b​​uilder 的内容,除了博客或一些帖子之外,我找不到任何关于它的信息。还有一些视频vimeo.com

但令我惊讶的是,drools 文档中没有太多关于 jbpm-form-b​​uilder 的内容。这让我认为 JBPM 表单构建器是否足以在生产环境中使用。由于社区对表单构建器的查询也不多,它是正确进入市场还是目前正在开发中?

我尝试使用 guvnor 部署它,但发现了一些问题,例如 ioData 搜索仅显示来自 defaultPackage 的进程。如果我归档 defaultPackage 并尝试在包含多个流程和人工任务的不同包中创建表单定义,我不会获得任何流程/或人工任务来关联表单。

这是一个值得关注的问题,因为当时我在 guvnor 中定义角色和权限时,我希望用户仅访问那些属于其访问区域的进程。

其次,我尝试在JBOSS的不同节点上部署guvnor和form builder,并为此配置了preference.properties和srinComponents.xml。我发现 guvnor 仍在使用相对于其上下文的路径访问表单生成器,并且在我的 guvnor 的 IFrame 中出现 Http-404 错误。如果我使用此部署结构以独立模式打开表单构建器,它会正确访问 guvnor 并显示来自 guvnor 的默认包的进程和人工任务。

0 投票
1 回答
717 浏览

drools - 将包文件转换为 drls

我正在使用 Drools 5.5.0,我已将 drls 中的所有规则转换为包文件(.pkg 文件)并在需要的地方使用它们。现在我需要知道是否可以将包文件转换回 drl 格式的规则。或者我们能否将该 pkg 文件转换为任何其他规则格式。

提前致谢。

0 投票
0 回答
1021 浏览

authentication - 如何在 Tomcat 上为 Guvnor 进行身份验证?

我在 Tomcat 6.0 服务器上运行 Drools Guvnor,但让身份验证正常工作的时间最糟糕。这是针对一家小公司的,所以我不需要很多用户,而且 LDAP 将是巨大的矫枉过正(据报道,这是一个巨大的痛苦)。我的第一个想法是将它与 JAAS 联系起来,它有一些工具。不幸的是,我无法完全理解我找到的在 Tomcat 上使用 JAAS 的说明。从我的阅读来看,第一步是“编写自己的 JAAS 实现”,这显然很疯狂。(我对 Tomcat 真的一无所知,对服务器管理也不太了解,这可能无济于事。)

所以,去他妈的 JAAS,我说,我将只使用 Tomcat 内置的基本身份验证,而忘记为不同的用户授予不同的权限。当然,基本的 HTTP 身份验证通常是一个糟糕的主意,但服务器位于防火墙后面,无论如何都会阻止来自办公室外部的访问,所以它应该足够了。所以我添加了一些用户tomcat-users.xml,然后打开web.xml并添加了这个:

它需要一些试验和错误,但它似乎工作正常。访问网络应用程序带来了用户名/密码挑战,登录成功,一切看起来都很好。但是有一个大问题:KnowledgeAgent在我的规则引擎实现中,当它试图下拉打包的规则时,它开始遇到 401 错误。当然,我将我正在使用的用户名和密码更改为ChangeSet.xml有效的用户名和密码,但它仍然不起作用。

据我所知,当我使用 Tomcat 喜欢的用户名/密码时,Guvnor 会DemoAuthenticator看着它们,注意到用户名和密码不一样,并拒绝访问。有一行beans.xml似乎正在加载DemoAuthenticator,但将其注释掉似乎没有任何作用。(我不知道为什么 Web 应用程序不会发生这种情况。)我想出的另一种可能性是,无论是设置basicAuthentication,username还是password将用户名和密码添加到 URL 都不会以Tomcat 识别为基本 HTTP 身份验证的格式。我不确定如何区分。在这一点上,我不知道自己做错了什么,也不知道该怎么做才能弄清楚自己做错了什么。有人有建议吗?

0 投票
2 回答
593 浏览

authentication - GUVNOR 7.1 中的 JAAS 身份验证异常

我在为 Guvnor 配置 JAAS 身份验证时遇到了一组错误。我在 jboss 社区上进行了很多搜索,但对于所有解决方案,我都没有任何效果。我收到登录弹出窗口,或者我收到“此用户没有权限设置”。Guvnor Manual 指的是 jboss eap 5,我正在尝试在 Jboss AS 7.1 上执行此操作。

0 投票
2 回答
6665 浏览

drools - 流口水复杂的事实

我一直在研究如何简化一些用 DRL 手动编写的规则,变得难以维护。

通过谷歌搜索导致“决策表是前进的最佳方式”。

但不幸的是,我们的事实非常复杂,所以现在流口水的电子表格转换器,无法处理如此复杂的事实,

那么第一个问题是开发人员通常如何处理drools 知识库中非常复杂的事实呢?

例如,我们有类似的事实

现在我必须写一条规则,说这个人的保险索赔历史不好。然后我发现很难将其放入电子表格中,因为在 drl 文件上手动编写此规则更容易。

谢谢您的帮助。对上述示例的任何帮助也会非常好。

0 投票
1 回答
956 浏览

drools - 在 Drools-Guvnor 中使用多个“匹配”语句

我正在通过 drools-guvnor 创建规则。我已经导入了我的 POJO 模型并且一切都设置正确(我已经完成了测试),但我似乎无法弄清楚如何让“匹配”运算符正常工作。这是我到目前为止所拥有的(源代码):

谁能给我有关在 drools-guvnor 中使用多个正则表达式检查的任何提示或某种使其工作的方法。好像他们的论坛真的很陈旧。我可以在那里找到的大多数答案都没有得到回答。

任何帮助,将不胜感激。

0 投票
2 回答
1685 浏览

drools - 将 KnowledgeAgent 与 Gunvor 提供的 changeset.xml 一起使用

我是 Drools 的新手,并试图尝试将其与 Gunvor 集成,因为我们希望我们的应用程序能够动态使用用户创建的最新规则。

我正在使用 Drools 和 Guvnor 5.5。

我首先在 Gunvor 中创建一个包,然后使用如下代码创建了一个测试客户端:

我面临的问题是提供changeset.xml的方式

首先,我创建了 changeset.xml 并将其放在我的类路径中,并通过类似changeSetUrlResource = ResourceFactory.newClassPathResource("drools/ChangeSet.xml")内容的内容准备 changeSetUrlResource

这种方法有效。

然后我看到 changeset.xml 是直接从 Gunvor 提供的,我想使用它。我试图做这样的事情:

这种方法行不通。访问时它会抱怨 401 http://localhost:8080/guvnor/org.drools.guvnor.Guvnor/package/test/LATEST。Gunvor 提供的 ChangeSet.xml 不包含身份验证信息。

鉴于 Gunvor 提供了 ChangeSet.xml,我相信有一种适当的方法可以将其与知识代理一起使用。但是在网上做了很多搜索,除了在 Gunvor 中完全关闭身份验证之外,我找不到相关信息。

配置 Drools KnowledgeAgent 以使用 Gunvor 上的 changeset.xml 的正确方法应该是什么?

谢谢

0 投票
1 回答
719 浏览

database - 如文档中所述,Guvnor 并未将资产保存在数据库中。它保存在文件系统中

我在 Drools-Guvnor-5.5.0.Final 版本中工作,并已配置 repository.xml 以将所有资产 + 索引保存在 oracle db 中。但它不是那样工作的。我想在主要和辅助 guvnor 节点指向同一个数据库实例的弹性环境中部署 guvnor。我在主节点上部署了 guvnor,repository.xml 指向ORACLE11 DB 并导入/创建了一些资产。然后部署辅助 guvnor 指向同一个数据库。我无法看到我在主要 Guvnor 节点中拥有的包和资产。我可以看到在 DB 中创建的表。

我正在附加 repository.xml 配置。在 repository.xml 中,我配置了 JackRabbit 文档中定义的持久性管理器,用于在 db 中持久化资产。虽然我也使用了自动生成的存储库文件。这是我从 Guvnor 的管理面板生成的。

Guvnor 不应将资产保留在文件系统中。故障转移策略需要将资产保存在数据库中。

请从以下链接复制配置文件, https://community.jboss.org/thread/230419

0 投票
1 回答
402 浏览

java - 在 Guvnor 中构建后,如何从不同于 defaultPackage 的包在 jBPM 控制台中添加进程

我可以制作和提交从 Eclipse 到 Drool Guvnor 的流程。但是当我进入 JBPM 控制台时,这些进程不存在。为什么?

好的,我知道我必须构建包,但是在我成功构建包之后,我的进程仍然没有出现在 jbpm-console 的 Process Overview 中。也许是因为我的项目不在 defaultPackage 中?我尝试在 defaultPackage 中开发其他一些测试项目,它们看起来都很好。我如何告诉 Guvnor/console 在不同的包中查找我的项目,比如说com.foo.pack?我正在使用 JBPM 5.4

在相关的说明中,我想这会http://localhost:8080/gwt-console-server/rs/process/definitions向我报告可以在流程概述中找到的流程列表;尽管如此,我还是不明白这个资源是如何工作的。