2016-12-06 6 views
0

KIEサーバーに配置されたdroolsワークベンチで作成された小さなプロジェクトがあります。残りのAPIを使用して、ルールを適切に起動して事実を挿入することができます。しかし、ガイド付きのデシジョン・テーブルに含まれるルールは起動しません。ここで私はKIEサーバに送信し、要求の例である:Kie Server Guided REST APIから呼び出されないディシジョンテーブルのルール

<batch-execution lookup="defaultKieSession"> 
<insert out-identifier="applicant" return-object="true" entry-point="DEFAULT"> 
    <models.Applicant> 
     <timeEmployed>35</timeEmployed> 
     <employmentStatus>Contract</employmentStatus> 
     <violations>[]</violations> 
    </models.Applicant> 
</insert> 
<fire-all-rules/> 
</batch-execution> 

このデータはトリガすべきことをすべてのルールは、決定表に含まれるものを除き、解雇されています。

私は同じデータでテスト・シナリオを実行すると、デシジョンテーブルのルールを含むすべてのルールは、正しく解雇されています enter image description here 問題は、RESTのAPIの使用に関連しているようです。私が間違ってやっていることについてのアイデアは?ここで

は、問題の表である: enter image description here

違反は、単純に違反アレイにエラーを追加するメソッドを呼び出します。

kmodule.xmlの中にあります。

<kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/> 

明確化 ちょうどガイド付きのDRLからの私の要求火災ルール明確にすることが、私の問題は、ガイド付きのルールテーブルのルールです。 1994年4月15日11:03:44から0000 1970年1月13日16時19分41秒私はこの要求を送信する場合 enter image description here

:たとえば:

は、ルールを考えます-0024 契約 35 []

これは、応答の断片である:

enter image description here

また、このデータは、それが発射されていないがgdstでルールと一致する必要があります。

+0

dtableの表示方法を教えてください。また、kmodule.xmlファイルの内容。 –

答えて

0

表の条件演算子は表示されませんが、条件が判定表の行/ルールを満たしていないと推測されます。デシジョンテーブルに入力されたデータをマッピング

、我々はそれを見ることができます:それは、行は無視されて3-11で行1と一致するように

  1. 雇用状況は、契約ですので、のマッチングに依存残りの列。
  2. Employment DurationはおそらくtimeEmployedで、すべての行が等しいかどうかは一致しません。列演算子が>の場合、2〜11行に一致します。 <の場合、1行目と一致します。
  3. 行1と2でジョブ・カテゴリが無視され、入力行に明らかな一致値がなく、行3〜11が一致しません。これらに基づいて

  • 3行のみ1と2は
  • 1に一致する可能性が言うだけの行1行1および2
  • 2の一致する可能性が言う我々に基づく不確定であります

私の推測では、行1は近いが#2は一致しません。

+0

申し訳ありません。私は条件を示すためにイメージを編集しました。私はまた、実行されたテストシナリオのイメージを掲載しました。同じ入力行1のルールを使用して起動されます。ただし、事実がREST APIを介して挿入されても起動しません。 –

+0

out-identifierが無効です。正しいはoutIdentifierです。それを修正した後に機能しますか? – Jeff

+0

「out-identifier」は、オブジェクトが返されない「outIdentifier」を試したときに正しいと思われます。 –

関連する問題