gpt4 book ai didi

rest - 存在数据库 restxq 触发器 : Services deleted but still active

转载 作者:行者123 更新时间:2023-12-02 17:35:12 24 4
gpt4 key购买 nike

我对 exist-db 中的 RESTXQ 实现有疑问。我认为可能是 RestXQTrigger 没有正常工作。

问题:我(通过仪表板)删除了几个 .xqm 文件中包含 RESTXQ 服务的集合。但是,即使在重新启动 eXist 之后,服务并没有取消注册并且仍然可用。

有没有办法强制取消注册,我的意思是除了重新创建以前的集合/文件并一个一个地删除每个 .xqm 文件(这样,触发器似乎可以工作)?

最佳答案

目前 eXist 中的 RESTXQ 仅实现文档触发器事件,而不是集合触发器事件。这只是一个限制,需要在有时间实现时解决。

在命名空间中有一个随 eXist 一起提供的 XQuery 模块:http://exquery.org/ns/restxq/exist。此模块中的函数使您能够手动操作 RESTXQ 注册表。您可以在 $EXIST_HOME/conf.xml 中启用它。如果您随后重新启动 eXist 并重新构建函数文档,您应该能够在函数浏览器应用程序中看到这些函数的文档。特别是您最有可能需要以下功能:

exrest:deregister-module(xs:anyURI("/db/my-module.xqm"))exrest:register-module(xs:anyURI("/db/my-module.xqm")).

还有用于从模块中注册和注销各个功能的函数,称为 register-resource-functionderegister-resource-function 它们与上面类似但是采用第二个参数,它是 qname#arity 形式的函数签名(作为 xs:string),例如"fn:substring#2"

关于rest - 存在数据库 restxq 触发器 : Services deleted but still active,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27569872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com