Xquery从.properties文件提取属性值

Xquery从.properties文件提取属性值,properties,xquery,marklogic,roxy,Properties,Xquery,Marklogic,Roxy,我目前正试图从属性文件中提取属性值,但遇到了一些问题。我无法在ML查询控制台中测试这一点,因为那里不存在属性文件。我目前正试图像这样获取文件的值 let$port:=#{@properties[“ml.properties-name”]} 我也看过 xdmp:document-get-properties( $uri as xs:string, $property as xs:QName 然而,我相信这仅限于.xml文件。是否有人有办法/解决办法访问这些值?我在Marklogic的

我目前正试图从属性文件中提取属性值,但遇到了一些问题。我无法在ML查询控制台中测试这一点,因为那里不存在属性文件。我目前正试图像这样获取文件的值

let$port:=#{@properties[“ml.properties-name”]}

我也看过

xdmp:document-get-properties(
   $uri as xs:string,
   $property as xs:QName
然而,我相信这仅限于.xml文件。是否有人有办法/解决办法访问这些值?我在Marklogic的网站上查阅了一些文档,但似乎找不到任何有用的东西。我以前访问ruby的方式是通过monkey补丁,允许我访问那些私有字段。问题是我调用的ruby脚本只调用了一次,而我的.xqy文件每分钟运行一次,将参数发送到另一个函数。我需要从属性文件中访问这些参数,现在我只是将它们硬编码进来。有什么想法吗


谢谢

您无法访问这样的部署属性,但可以随部署一起传递它们。如果您使用最新的Roxy创建了一个新的REST应用程序,则应将此
config.xqy
的副本添加到
src/config/

当部署到模块数据库时,会对该文件进行特殊处理。属性引用在其中被替换。在您的情况下,添加另一个变量,并按照
@ml.xyz
模式为其指定一个字符串值:

declare variable $c:port := "@ml.property-name";
然后可以导入配置库,并在代码中使用它

这些所谓的部署人员替换在Roxy wiki上有更详细的描述:


我标记为关闭,我认为它太广泛了,我已经找到了一种方法,我实施了,它起了作用,但它不适合这个问题的范围。