2013-10-09 2 views
1

Я пытаюсь интегрировать автономный редактор правил Guvnor в существующее приложение. Приложение теперь позволяет загружать drl-файлы. Я хочу интегрировать редактор Guvnor, чтобы пользователь мог создавать или редактировать правила из приложения. Проблема, с которой я сталкиваюсь, - это приложение, позволяющее пользователю вводить поля для правил и храниться в db. Поля извлекаются во время выполнения. Нет класса модели. Я не мог понять, могу ли я использовать эти поля для динамического заполнения фактов, показанных в редакторе Guvnor.Динамические факты для drools guvnor

Любая помощь с благодарностью. Спасибо! Спасибо!

ответ

0

Drools правила работают, сопоставляя факты, которые являются просто классами Java. Java не является динамическим языком, поэтому вы не можете просто добавлять методы к классам. Поэтому вам нужно сделать что-то другое.

Простейшим решением было бы иметь базовый факт, который содержит HashMap пар ключ/значение. Затем правила могут быть записаны для соответствия значениям в этой коллекции. Недостатком здесь будет то, что двигатель не будет реагировать на изменения этих значений.

Для действительно динамических фактов нетрудно создать код DRL для декларативных фактов на основе пользовательских моделей. Затем вы можете загрузить их в базу знаний и написать правила, основанные на них.

Смежные вопросы