在安培中触发更新时,MarkLogic“找不到触发器模块”错误

时间:2019-05-29 20:36:18

标签: paypal xquery marklogic paypal-rest-sdk

从Amps模块更新文档时遇到XDMP-TRIGGERMODULE: Could not find trigger module:错误。

触发器在安培方面有问题吗?

设置用于使用Webhooks进行PayPal付款验证。 PayPal API将HTTP回调发送到MarkLogic服务器上的终结点,以通知服务器付款完成。然后,端点代码处理该消息,并将相关数据发送到安培模块以执行。这个想法是webhook需要命中一个公共端点,因此就执行权限而言它将使用默认的公共用户。使用该放大器,因此代码可以具有适当的权限来更新文档,并指出已收到付款。

为了进行单独的不相关过程,设置了一个单独的(不相关)触发器以对上述相同文档进行任何修改。当按其他所有方式修改文档(按其预期目的)时,此触发器运行得很好,但是由于某种原因,当amp模块修改文档时,会触发XDMP-TRIGGERMODULE错误,从而导致整个事务失败,并阻止amp代码永远执行(并因此导致付款记录无法记录)。

我想知道放大器模块中的更新是否触发了触发器?如果是这样,如何避免出现此问题?在这种特殊情况下,甚至不需要触发代码,但是可以将其设置为对这种特定类型的文档进行所有修改,并且我不确定在特殊情况下是否有防止这种情况的方法。

感谢所有帮助!

1 个答案:

答案 0 :(得分:0)

如果您的组织得到MarkLogic的支持,我建议您通过他们。

否则,需要更多数据来帮助您。也许触发代码和调用它的放大模块代码以及如何设置放大以及有关调用模块的用户/角色的信息。