JBoss 7 Application Server ローカルインスタンス内に KIE Drools Workbench 6.2.0 Final をインストールし、ローカル Tomcat 7 インスタンス内に Kie Server 6.2.0 Final をインストールします。
Web ベースの KIE Workbench を厳密に評価目的で使用する (Java ベースの Maven プロジェクトをコード生成するために使用し、Eclipse や IntelliJ IDEA などの特定の IDE を使用していない):
testRepo という新しいリポジトリを作成しました
HelloWorld という新しいプロジェクトを作成しました
メッセージと呼ばれる文字列プロパティを持つ 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>
次のペイロードを使用して POST を実行しようとすると (Postman または SoapUI を使用):
<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 からわかるように、うまくいきました。おそらく私はそれを正しく展開していませんか?
ところで、私は次のスタックオーバーフローの投稿を基礎として使用しました(この質問をする前に)...
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 の下に次のディレクトリのみが含まれます。
メタINF
WEB-INF
これを読んでくれてありがとう...