Использование OSB Fuction Bea в процессоре Java XQuery
Для моего преобразования я использую org.apache.xmlbeans
(xmlObject.execQuery(xqueryFileContent, options);
)
Теперь я сталкиваюсь с проблемой, что функции fn-bea не работают: в этом примере: fn-bea:uuid()
Трассировка стека:
Caused by: weblogic.xml.query.exceptions.XQueryStaticException: line 15, column 18: {err}XQ0017: "{http://www.bea.com/xquery/xquery-functions}uuid": unknown function (or number of arguments (0) is wrong)
Я читал ветку, где говорят, что это не поддерживается, но это не удовлетворяет.
Как я могу предоставить своему Java-процессору доступ к функциям bea?
РЕДАКТИРОВАТЬ: XQuery в строке 15:
<bp-id>{replace(fn-bea:uuid(), '-', '')}</bp-id>
декларация:
declare namespace fn-bea ="http://www.bea.com/xquery/xquery-functions";
1 ответ
Вы можете включить большинство функций fn-bea, используя процессор Oracle XQuery для Java: функции OSB fn-bea, используя процессор Xquery в Java
Но, как вы заметили, это не поддерживается и не включит некоторые функции fn-bea, включая fn-bea:uuid().
Вы можете реализовать свою собственную внешнюю функцию: https://docs.oracle.com/database/121/ADXDK/adx_j_xqj.htm