Проблемы с использованием Drools и Tomcat

Когда я изменил правило в .drl, изменения не вступают в силу. Можно ли изменить (т.е. горячее развертывание) правило (.drl) в drools без перезапуска сервера (tomcat)? Как я могу это решить?


person martin    schedule 12.07.2010    source источник


Ответы (1)


Да, есть несколько способов, но первый вопрос заключается в том, как вы загружаете правила в первую очередь — загружаете ли вы их из пути к классам? или где-то на диске? Существует класс KnowledgeAgent (и RuleAgent), который может загружать его из различных источников, обнаруживать изменения и автоматически применять их при изменении файла drl.

person Michael Neale    schedule 13.07.2010
comment
Я создаю базу знаний с помощью Spring, а затем создаю сеанс и запускаю правила именно тогда, когда мне нужно их выполнить. Я думаю, что проблема с KnowledgeAgent заключается в том, что он постоянно сканирует каталоги, это производительность? Заранее спасибо! - person martin; 14.07.2010
comment
Сканирование обычно не должно быть проблемой. однажды (java 7?), Который может исчезнуть, поскольку возможны настоящие уведомления о файлах. - person Michael Neale; 20.07.2010