我的机器上安装了MarkLogic 5.x,因此我只能使用XQuery API。
我正在尝试使用sec:get-role-names()来获取某些ID的角色名称,因此我得到一个例外:线程中的异常" main" com.marklogic.xcc.exceptions.XQueryException:XDMP-UNDFUN :(错误:XPST0017)未定义的函数sec:get-role-names()
我理解需要定义sec名称空间,但我不知道如何才能这样做。所以有人可以指导我。
代码:
请求request1 = session.newAdhocQuery(" sec:get-role-names(\" 3855349555012759983 \")");
使用适用于MarkLogic的XQJ API获取文档URI的功能
我在XQPreparedExpression中使用cts:search函数。 我可以使用cts:search获取已修改文档的内容,但是没有获得任何可以为修改后的文档提供文档URI的函数。如果有人知道这一点,请告诉我。
由于
答案 0 :(得分:1)
sec:get-role-names不是内置函数:它位于security.xqy模块中。
因此,您需要将模块导入添加到查询中:
import module namespace sec="http://marklogic.com/xdmp/security" at "/MarkLogic/security.xqy";