gpt4 book ai didi

mirth connect 停止通过目的地的消息传播

转载 作者:行者123 更新时间:2023-12-01 01:49:35 29 4
gpt4 key购买 nike

我正在使用 Mirth Connect 3.5.0.8232。
我有一个数据库阅读器作为源连接器,一个 JavaScript 编写器作为目标连接器。我决定在目的地放一些花哨的代码,做四件独立的事情,应该一个接一个。基本上我只是写了代码,在我看来它太长而且太笨拙,所以我决定通过“等待上一个目的地”选项将它分成 4 个以菊花链连接的目的地。

问题是:如果目标之一发生错误,我如何中断此执行链?

我发现 2013 年的一个 JIRA 问题说实际上在目标连接器的正文中发生的错误不会阻止消息发送到所有其他目标。并且它指出 2.X 版本的行为仍然是最新的,即目标转换器中可能发生的错误实际上会阻止消息传播。

我尝试在 Destination 主体和 Destination Response Transformer 中抛出错误,在这两种情况下,消息都会继续发送到其他目的地。我还尝试从 Destination 主体返回 ResponseFactory.getErrorResponse ,但没​​有成功。我还尝试在 Destination Response Transformer 中将 responseStatus 设置为 ERROR 无济于事。他们是指普通的变压器/滤波器吗?

另外 - 也许我将任务拆分为 4 个不同目的地的特殊解决方案不是最初创建目的地的原因?我认为文档指出目的地基本上就是实际的 Destination 一词所代表的意思。

如果上述情况属实,那么在 Mirth 中是否有更好的功能组织代码的方法?我认为 JavaScript 编写器中不允许包含外部 JS 文件 - 即使是这样,我也希望所有内容都位于 Channel 内部,并且可以作为单个文件导出/导入。

谢谢你。

最佳答案

是的,当过滤器/转换器抛出错误时,它被认为是真正的“异常”,因此消息流停止(不执行同一链中的后续目标)。

如果从实际的目标调度程序或响应转换器抛出错误,则该目标将标记为 ERROR,但后续目标仍将被执行。

如果需要,您仍然可以停止消息流。对后续目的地使用过滤器:
Filter

关于mirth connect 停止通过目的地的消息传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45617164/

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