0

StatefulKnowledgeSessionに要素のリストを挿入しました。drools .drlファイルのWhen句で、リストのさまざまな要素のプロパティ値を比較する必要があります。

たとえば、ペットのリスト[kbSession.insert(list)としてセッションに追加]があり、各ペットにはnameプロパティ(pet1.name = "adi"、pet2.name = "flix")があります。では、when句でこの項目をチェックするのに最適なものは何でしょうか。

私が持っているtest.drlファイルで言う

ルール「ペットアイテム」

方言「java」

いつ

 list.get(0).name != list.get(1).name

それから

 do something!

どんな提案でも大歓迎です!

敬具、

シェク

4

1 に答える 1

0

すべての Pet オブジェクト (技術用語 - Facts) をルールに照らして検証しようとしていますか? 次に、リストとして挿入する必要はありません。すべての Pet オブジェクトを、session.insert(petObj) および fireAllRules として 1 つずつ挿入します。ルール エンジンは、ルールに対してすべてのオブジェクトをチェックし、一致するオブジェクトのルールをアクティブにします。

于 2012-09-06T15:23:21.527 に答える