Правила Oracle - импортированный факт Java вызывает UndefinedException при развертывании
В JDeveloper 12c я создал приложение / проект BPM. Настройки SOA проекта Composite With Business Rule
,
Проект имеет посредника и предоставляется в качестве услуги REST. Я использую IntegratedWebLogicServer
Факты XML являются довольно общими, включая списки полей, подсписков, подсписков и т. Д. Это усложняет навигацию по входным данным.
Я создал класс Java с некоторыми статическими методами, которые более легко извлекают данные на основе выражения. Я создал банку с этим классом, а затем импортировал этот класс в факты Java. Затем я создал правила, которые вызывают статические методы для этого факта Java.
Правила проверяются очень хорошо, и теперь я могу успешно запустить правила на вкладке "Тест" в правилах. Я получаю ожидаемые результаты. Однако при развертывании проекта создается впечатление, что импортированный jar не развертывается вместе с ним, поскольку я получаю следующее исключение:
oracle.rules.rl.exceptions.UndefinedException: The symbol "mypackage.MyUtil" is undefined.
at line 22 column 14 in /Ruleset(main)
Я думал, что импорт класса в Java Facts вызовет развертывание моего пользовательского jar или, по крайней мере, класса, который я импортировал. Но, похоже, это может быть не так. Я что-то пропустил? Есть ли где-то в моем проекте, где я могу разместить банку, чтобы она была развернута?
Я попытался добавить флягу к записям Библиотеки и Classpath проекта. Я также попытался добавить его в пользовательскую библиотеку, расположенную в проекте, и добавить ее в список библиотек и путей к классам. Но оба не дали эффекта.
Я новичок в JDeveloper и Oracle BPM, так что я надеюсь, что здесь есть что-то простое, что мне не хватает.
1 ответ
Решением было добавить банку в этот каталог:
MyBpmApplication\MyBpmProject\SOA\SCA-INF\lib