对于我的转换,我使用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函数的访问权限?
编辑:
第15行的XQuery:
<bp-id>{replace(fn-bea:uuid(), '-', '')}</bp-id>
声明:
declare namespace fn-bea ="http://www.bea.com/xquery/xquery-functions";
最佳答案
您可以使用Oracle XQuery Processor for Java启用大多数fn-bea功能:
OSB fn-bea functions using Xquery processor in Java
但是,正如您注意到的那样,不支持此功能,它不会启用包括fn-bea:uuid()在内的多个fn-bea函数。
您可以实现自己的外部功能:
https://docs.oracle.com/database/121/ADXDK/adx_j_xqj.htm#GUID-4B1AD5F7-FAF2-44C3-B577-5A5CF44B5AFF