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

Drools/jbpm-在Kie执行服务器上远程执行规则

隗星驰
2023-03-14

我们目前正在将jBPM(7.37.final)规则部署到一个Kie执行服务器,并使用执行服务器自动公开的REST API调用规则。

但是由于一些体系结构的限制,我们不能使用REST API调用规则。该选项是执行一个基于jar(kie服务器客户机或其他)的集成,并从客户机(java应用程序)远程调用执行服务器上的规则。

Virges Vinay

共有1个答案

屈博
2023-03-14

通过提供新功能,可以使用任何自定义传输触发业务规则。

我最近写了一篇关于这一点的文章,它使用了Apache Mina传输。

例如,这是我们的规则:

import org.jbpm.test.Person;

rule SayHello
  when
      $p : Person(age >= 21)
  then
      System.out.println("Hello " + $p.getName());
end
telnet 127.0.0.1 9123
sayHello|{"lookup":"ksession","commands":[{"insert":{"object":{"org.jbpm.test.Person":{"name":"john","age":20}}}},{"fire-all-rules":""}]}
14:12:49,715 INFO  [stdout] (default task-1) Hello john

在这篇文章中,我添加了一个kie执行服务器的自定义映像,但是只需将自定义功能jar复制到kie执行服务器文件夹WEB-INF/lib/中就可以实现同样的效果。

 类似资料:
  • “Drools骆驼服务器”和“KIE-WB执行服务器”有什么区别?它们是否服务于在远程服务器中执行规则/进程的相同目的?

  • 当规则应用程序在KIE服务器上运行时,如何启用规则引擎跟踪/日志记录? 规则应用程序是在工作台中创建的,不包含自定义代码。我能够使用KIE REST API执行规则,但是规则应用程序没有产生预期的结果。 环境: 我尝试了以下步骤: 使用Git在本地克隆工作台项目 将logback.xml添加到项目的根目录 将更改推回到工作台git repo 在工作台项目编辑器视图中添加了日志作为依赖项 更新项目版

  • 我是个新来的流口水的人,正在尝试为牙齿保险申请设计一些规则。系统基本上会让用户知道,根据之前执行的服务的历史记录,他们将要执行的程序可能不在保险范围内。它还将有其他规则,可能是基于年龄的,但我可以处理这些规则。 我的事实是: 患者-患者信息列表 服务-以前执行的服务。(即:服务代码=D1234,执行日期=日期) 警报-(alertName=“X射线2/12个月期间”) 我需要一条规则,说明患者在过

  • 公共无效populateRestHeader(交换交换){ String myMessage=“ ”+“ john”+“51 ”+“; } 在KIE服务器日志中,我得到: 15:19:33,140 WARN[org.jboss.resteasy.core.exceptionHandler](默认任务-114)执行失败:javax.ws.rs.notsupportedException:无法在org

  • 问题内容: 我试图通过这样的本地服务器上的ssh命令在远程linux服务器上执行命令: ssh myremoteserver’类型ttisql’ 其中ttisql是我的远程计算机路径上的可执行文件。 运行此命令的结果是: bash:第0行:类型:ttisql:未找到 当我只是先连接并执行以下操作: ssh myremoteserver 然后输入命令: [myuser @ myremoteserve