gpt4 book ai didi

marklogic - 如何显式触发 CPF 操作模块

转载 作者:行者123 更新时间:2023-12-03 06:50:06 26 4
gpt4 key购买 nike

我有一个处于初始状态的文档 ( http://marklogic.com/states/initial)并且我已将我的 CPF 管道配置为:

<state-transition>
<annotation>ready</annotation>
<state>http://marklogic.com/states/ready</state>
<on-success>http://marklogic.com/states/completed</on-success>
<on-failure>http://marklogic.com/states/error</on-failure>
<execute>
<condition>
<module>/MarkLogic/cpf/actions/namespace-condition.xqy</module>
<options xmlns="/MarkLogic/cpf/actions/namespace-condition.xqy">
<namespace/>
</options>
</condition>
<action>
<module>action.xqy</module>
</action>
</execute>
</state-transition>

现在,当我使用以下命令更改文档的状态时:

cpf:document-set-state("/myDocs/example.xml","http://marklogic.com/states/ready")

CPF 操作模块 action.xqy 未执行。

有什么方法可以显式更改文档的状态并触发为该状态配置的 CPF 操作模块吗?

最佳答案

CPF 处理有一些代码可以防止它在已经处于事件状态时重新触发。如果您将日志级别设置为“调试”,您将看到有关“检查转换导致跳过”的消息,其中显示了这一点。

因此,您还需要将处理状态设置为“事件”(在与状态更改相同的事务中):

cpf:document-set-processing-status("/myDocs/example.xml", "active")

关于marklogic - 如何显式触发 CPF 操作模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26850320/

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