当前位置: 首页 > 知识库问答 >
问题:

使用UI编写JBoss Drools规则

刘元青
2023-03-14

我们正在使用JBoss Drools来外部化我们正在构建的某些服务中一些特别容易更改的业务逻辑。

在我们的开发人员可以创建和维护这些规则的地方,这些规则运行得很好,我们有很好的集成水平和集成工作流。

我们希望将其应用扩展到一种需要非常高级别定制的新服务。本质上,“专家用户”需要能够设置两种不同类型的规则:

>

  • “标准”规则-这些几乎是隐含的规则,我们知道这些规则是常见的需求,我们可以构建UI来设置这些规则,例如,只允许在两个日期之间进行某些操作等。

    “自定义”规则-完全脱离实际的要求,虽然我们可以尝试和预测,但我们宁愿让人们编写和测试自己的规则:)

    我的问题是,是否有可能(并且确实有任何东西作为示例)同时使用Drools 1

    感谢您的任何建议!

  • 共有1个答案

    武功
    2023-03-14

    你有几个选择。

    对于(2),您可以简单地将Guvnor的规则编辑器嵌入到您的Web应用程序中。Guvnor中的所有编辑器都是可嵌入的组件,因此您可以选择要使用什么和不使用什么。我在这种方法中看到的问题是您可能会赋予用户太多的权力:)。换句话说,基于模型编写任何规则的能力需要通常只有技术用户知道的学科。例如,编写测试来验证规则。一些业务用户对此有足够的技术知识,但我想说这可能是例外,而不是规则。

    我最喜欢并推荐的是开发您自己的特定于领域的GUI,它使用/公开业务用户熟悉的概念和术语,以及编写对其特定工作“有意义”的规则的方法。有时,他们甚至不知道自己在写“规则”,但他们会的。在幕后,应用程序从特定于域的GUI获取输入,并使用drools API或基于字符串的模板动态生成规则。这解决了您的(1)需求,但可能也足以解决(2)需求。

     类似资料:
    • 我正试图为一种语言的多个子集定义一些Boost::spirit::qi解析器,并尽可能减少代码重复。为此,我创建了一些基本的规则构建函数。最初的解析器工作得很好,但是一旦我开始使用组合函数,我的解析器似乎就不再工作了。 一般语言的形式是: 语言中有一些子集,其中< code>A 、< code>B或< code>C必须是特定的类型,例如< code>A是int,而< code>B和< code>C

    • 这里我将描述文档编写规范格式,将从一下几个方面进行详细的介绍。 标题 文本 段落 数字 标点符号 文档体系 标题 定义文档中标题的使用规范。 层级 一级标题:文章的主标题 二级标题:文章的主干章节标题 三级标题:章节下的分支标题 四级标题:属三级标题内的分支标题 示例 # 一级标题 ## 二级标题 ### 三级标题 #### 四级别标题 原则 一级标题,全文仅能有一个一级标题,在本站中每篇文章的

    • Sass 的终极目标是解决 CSS 的缺陷。如我们所知,CSS 并不是一个完美的语言。CSS 虽然简单易学,却也能迅速制造严重的混淆,尤其是在工程浩大的项目中。

    • 所有页面 必须 包含 <html>, <head>, <body>,组织方式和常规 HTML 相同: <html> <head></head> <body></body> </html> 所有页面 必须 在 <body> 的 最后 编写或引用 mip 相关的 js。其中顺序是: mip.js 各组件的 js。如有相互依赖,把被依赖项写在前面。 举例来说,一个页面引用了两个组件 com

    • 目前,我正在尝试将与存储在集合中的的id进行匹配: 这是写的还是我做错了什么。任何帮助都很感激。

    • 说明 每一个项目都 必须 包含一个 readme.md 文件,readme 里书写这个项目的简单信息。作用主要有两个,一个是团队新成员可从此文件中快速获悉项目大致情况,另一个是部署项目时可以作为参考。 1. 排版规范 文档页面排版 必须 遵循 中文文案排版指北 ,在此基础上: 中文文档请使用全角标点符号; 必须 遵循 Markdown 语法,勿让代码显示错乱; 原文中的双引号(" ")请代换成中文