Я внедрил Drools в свой Java-проект. Все правила срабатывают, но условия проверяются только один раз сразу после срабатывания.
Так ведет себя Друлс? Мне нужно, чтобы он постоянно проверял логическое значение на наличие изменений.
Я внедрил Drools в свой Java-проект. Все правила срабатывают, но условия проверяются только один раз сразу после срабатывания.
Так ведет себя Друлс? Мне нужно, чтобы он постоянно проверял логическое значение на наличие изменений.
Вот как ведет себя механизм правил с прямой цепочкой (что чрезвычайно эффективно).
Если ваш факт изменится (например, если изменится результат его логического свойства/метода), обработчик правил должен быть уведомлен workingMemory.updated(fact, factHandle)
. Затем механизм правил активирует все правила (и ни одно правило больше), которые необходимо активировать на основе этого изменения.