我们参考了文档“ https://docs.jboss.org/drools/release/6.4.0.CR2/drools-docs/html/ch22.html ”来执行 kie 服务器中的规则。我们使用了以下步骤
对指定的 Container 执行操作和命令。您可以在 POST 请求的正文中向该容器发送命令。例如,要为 id 为 MyRESTContainer ( http://SERVER:PORT/CONTEXT/services/rest/server/containers/instances/MyRESTContainer ) 的 Container 触发所有规则,您可以向其发送 fire-all-rules 命令,如图所示下面(在 POST 请求的正文中):
示例 22.9。触发所有规则的示例服务器请求
但是我们没有得到服务器的任何响应。
package com.myspace.test;
function String hello(String name){
return "Hello " + name;
}
function boolean isNameJoJo(String name){
if(name == "Jo-Jo")
return true;
else
return false;
}
rule "Call function directly"
when
eval(isNameJoJo("Jo-Jo"))
then
hello("isNameJoJo is true");
end
rule "Hello World Using A function defined in the DRL"
when
then
hello("Georgina");
end
输出
{
"type" : "SUCCESS",
"msg" : "Container test_2.0.0 successfully called.",
"result" : {
"execution-results" : {
"results" : [ {
"value" : 0,
"key" : "Hello World Using A function defined in the DRL"
} ],
"facts" : [ ]
}
}
}
其实我想要规则的输出。即“你好乔治娜”;
任何人都可以对此有任何想法。
感谢您的宝贵想法。