Самый простой способ извлечь список с карты в DroolsJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Самый простой способ извлечь список с карты в Drools

Сообщение Anonymous »

Я пишу правило в файле 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
Пожалуйста, помогите !!!

Подробнее здесь: https://stackoverflow.com/questions/798 ... -in-drools
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»