Я пишу правило в файле DRL. При этом я вставил факт карты. Из этого мне нужно извлечь список и проверить, существует ли внутри списка значение из другого эффекта.
Я пытаюсь так
rule "valid product type-subtype rule"
salience 700
when
$paramMap : DrlParams()
// Extract as Object since this is what works for you
$list : List() from $paramMap.getList("productTypeSubtype")
// Bind your record and fields
$t : TradePositionRecord( $pt : productType, $pst : productSubType )
// Explicitly cast to java.util.List inside the eval
eval( ((List)$list).contains($pt + "," + $pst) )
then
System.out.println("Match found!");
end
Но это не работает. Комментируя одну строку, я понял, что выполнение правила не выполняется в строке извлечения списка. Я трижды проверил ниже.
DrlParams вставлен как факт.
Он содержит список строк в ключе карты ProductTypeSubType
Я пишу правило в файле DRL. При этом я вставил факт карты. Из этого мне нужно извлечь список и проверить, существует ли внутри списка значение из другого эффекта. Я пытаюсь так [code]rule "valid product type-subtype rule" salience 700 when $paramMap : DrlParams()
// Extract as Object since this is what works for you $list : List() from $paramMap.getList("productTypeSubtype")
// Bind your record and fields $t : TradePositionRecord( $pt : productType, $pst : productSubType )
// Explicitly cast to java.util.List inside the eval eval( ((List)$list).contains($pt + "," + $pst) ) then System.out.println("Match found!"); end [/code] Но это не работает. Комментируя одну строку, я понял, что выполнение правила не выполняется в строке извлечения списка. Я трижды проверил ниже. [list] [*]DrlParams вставлен как факт. [*]Он содержит список строк в ключе карты ProductTypeSubType [/list] Пожалуйста, помогите !!!