对于我的转换,我使用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

09-25 15:06