【发布时间】:2020-07-29 15:57:39
【问题描述】:
使用 mirth 版本 3.8.1。我已经为频道的错误设置了警报。当错误来自目标转换器(即 Javascript)时,警报能够访问 {messageId} 变量并提取正确的 id。但是,当基于 Javascript 的数据库编写器发生错误时,警报只会返回“{messageId}”而不是值。
我尝试了很多东西... 全局地图可从警报中访问,但在其中放置消息 ID 会被另一个处理线程覆盖。 其他目标类型 - http 发送器、tcp 发送器、通道写入器,甚至非基于 JavaScript 的数据库写入器目标都可以工作。
我什至将数据库编写器代码简化为:
var dbConn;
dbConn = DatabaseConnectionFactory.createDatabaseConnection('com.mysql.cj.jdbc.Driver','jdbc:mysql://host:port/dbname','','');
我是否只需要在数据库编写器代码中引发特定异常并在遇到这些异常时引发警报,并在错误字符串中发送消息 ID?
【问题讨论】:
-
您是使用 JS 风格还是普通风格构建查询以写入数据库?无论哪种情况,请发布您如何构建查询。您可能没有使用正确的
messageId替换语法。
标签: mirth