Слюни 7: ОШИБКА при обновлении «логически вставленного» объекта - PullRequest
0 голосов
/ 12 марта 2019

В нашем приложении мы логически вставляем объект, скажем, PERSON как часть выполнения RHS правила # 1. Позже, во время выполнения правила, другое правило # 2 хочет обновить состояние PERSON, которое меняет hashcode() и equals().

например. RHS

modify ($person) {
    setName($name)
};

Теперь это не выполняется, за исключением: IllegalStateException: Currently, we cannot modify something that has mixed stated and justified equal objects. (Используемая версия Drools: 7.16.0.Final)

К сожалению, я не смог прояснить проблему, прочитав документацию. https://docs.jboss.org/drools/release/7.18.0.Final/drools-docs/html_single/index.html#_truth_maintenance_with_logical_objects

Реализация кажется неправильной: мы не указываем второй объект, мы пытаемся изменить состояние логически вставленного объекта.

Разве это больше невозможно? Работает в Drools 4 и 5.3.

Заранее спасибо за проверку! Я максимально упростил проблему, система, реализующая эту логику, очень сложна.

Александр

...