2016-06-14 1 views
0

リストを反復処理するためにdroolsが、私が挿入したいですこのようなKieSessionにそれがはどのように私はDrools6.4.0.FINALに新たなんだと、私のビジネスロジック</p> <p>私のビジネスデータリターンリスト項目のリストを反復処理し、処理するために、それを使用したい

List<MyObject> list = service.queryList(Map<String,Object> param); 
kSession.insert(list); 
kSession.fireAllRules(); 

私のDRLファイル:

import java.util.List; 
import xxx.xxx.MyObject; 

rule "rule 1" 
salience 1 
activation-group "ctoc_order_rule" 
when 
    $mo:MyObject(orgunitid_lev1 == 58094); 
then 
    $mo.setBusiness_type_id(201); 
    $mo.setBusiness_type_name("business201"); 
    update($mo); 
end 

しかし、これは私のルールを発射ない、どのように私はリストを発射することができますか?ありがとう

答えて

0

java.util.Listと一致させる場合は、リストを挿入して、パターンList(...)を書きます。

xxx.xxx.MyObjectと一致させる場合は、MyObjectを挿入してMyObject(...)のパターンを記述します。

リストを挿入し、パターンがMyObject(...)の場合、一致することはできません。 Listにマッチさせて(fromを使用して)要素を抽出することは可能ですが、(generic)コンテナクラスにマッチするのはややアンチパターンです。いろいろなオブジェクトを含むリストがいくつかある場合はどうなりますか?

+0

ありがとう、私のルールを起動するMyObjectを反復する必要があります –

+0

多分、私はそうは思わない。 MyObjectオブジェクトの挿入はどうですか? – laune

関連する問題