Tomcat6 и слюни правила перезагрузки - PullRequest
2 голосов
/ 19 января 2011

Я столкнулся с проблемой, когда при изменении моих правил drools (.drl) в файловой системе он работает как тестовый сценарий JUnit, но не удается при попытке протестировать его в веб-приложении под управлением Tomcat6.

Когда я изменяю файл drl в Tomcat, я вижу журналы, в которых говорится, что KnowledgeAgent перестраивает базу знаний и т. Д., И я вижу новый экземпляр KBase в KAgent в отладчике, но все же, когда я выполняю правило, он показывает оригиналзначения.

Интересно, есть ли кэш, который Tomcat использует внутри для правил, и если да, то какой обходной путь?Любая помощь приветствуется.

1 Ответ

0 голосов
/ 19 января 2011

Насколько я понимаю ваш вопрос, я думаю, вам нужно перезагрузить файл drl, когда он будет изменен.
Используете ли вы ResourceFactory.newClassPathResource () метод для загрузки файлов правил? Если да, тогда используйте метод ResourceFactory.newInputStreamResource (stream) . Он всегда получает последний измененный файл drl.

...