将 KIE Drools Workbench 6.2.0 Final 安装在 JBoss 7 应用服务器本地实例中,并将 Kie Server 6.2.0 Final 安装在本地 Tomcat 7 实例中。
将基于 Web 的 KIE Workbench 严格用于评估目的(我使用它来生成基于 Java 的 Maven 项目的代码,而不是使用特定的 IDE,例如 Eclipse 或 IntelliJ IDEA):
创建了一个名为 testRepo 的新存储库
创建了一个名为 HelloWorld 的新项目
使用名为 message 的字符串属性创建了一个名为 HelloWorld 的新数据对象:
package demo; /** * This class was automatically generated by the data modeler tool. */ public class HelloWorld implements java.io.Serializable { static final long serialVersionUID = 1L; private java.lang.String message; public HelloWorld() { } public java.lang.String getMessage() { return this.message; } public void setMessage(java.lang.String message) { this.message = message; } public HelloWorld(java.lang.String message) { this.message = message; } }
创建了一个包含以下内容的新 DRL:
package demo; import demo.HelloWorld; rule "hello" when HelloWorld(message == "Joe"); then System.out.println("Hello Joe!"); end
当我在这个 URL 下将它部署到我的 Kie 服务器时:
http://localhost:8080/kie-server-6.2.0.Final-webc/services/rest/server/containers/helloworld
当我将上述 URL 复制并粘贴到 Google Chrome 中时,我收到以下响应:
<response type="SUCCESS" msg="Info for container hello">
<kie-container container-id="hello" status="STARTED">
<release-id>
<artifact-id>Hello</artifact-id>
<group-id>demo</group-id>
<version>1.0</version>
</release-id>
<resolved-release-id>
<artifact-id>Hello</artifact-id>
<group-id>demo</group-id>
<version>1.0</version>
</resolved-release-id>
<scanner status="DISPOSED"/>
</kie-container>
</response>
当我尝试使用以下有效负载(使用 Postman 或 SoapUI)进行 POST 时:
<batch-execution lookup="defaultKieSession"> <insert out-identifier="message" return-object="true" entrypoint="DEFAULT"> <demo.HelloWorld> <message>Joe</message> <demo.HelloWorld> </insert>
收到以下内容:
HTTP 状态 415 - 无法使用内容类型类型状态报告消息无法使用内容类型
描述 服务器拒绝此请求,因为请求实体的格式不受所请求方法的请求资源支持。
我可能做错了什么?我去了 Deploy -> Rule Deployments 并注册了我的 kie-server 并创建了一个名为 helloworld 的容器,正如从第 5 步中可以看到的那样,它起作用了。也许我没有正确部署它?
顺便说一句,我使用以下 Stack Overflow帖子作为基础(在提出这个问题之前)......
Google 的大部分搜索结果只是解释了如何通过设置基于 Maven 的项目以编程方式创建 Drools 项目。我正在评估 KIE Drools Workbench,看看非技术人员如何轻松地使用 KIE Drools Workbench 生成基于 Drools 的规则并执行它们。
我错过了一步吗?在Tomcat 7下,它只包含apache-tomcat-7.0.64/webapps/kie-server-6.2.0.Final-webc下的以下目录:
元信息
网络信息
感谢您抽时间阅读...