【发布时间】:2014-02-01 14:38:44
【问题描述】:
我们的客户将 HL7 消息格式从 2.3 更改为 2.7,我对新的消息格式有一些问题。基本上我们可以通过这种方式使用 mina2 协议来路由消息:
<route>
<from uri="mina2:tcp://10.124.199.40:2575?sync=true&codec=#hl7codec&minaLogger=true" />
[...]
</route>
在消息标准升级之前它运行良好。确实,将格式从 2.3 更改为 2.7 不起作用,我们收到以下 DEBUG 消息:
2014-01-13 10:15:57,361 DEBUG HL7MLLPDecoder [104] - Start scanning buffer at position 0
2014-01-13 10:15:57,361 WARN HL7MLLPDecoder [122] - Ignoring unexpected 1st end byte 28. Expected 2nd endpoint
2014-01-13 10:15:57,361 DEBUG HL7MLLPDecoder [56] - No complete message in this packet
我们正在使用 HAPI 作为消息解析器,恐怕这应该是问题所在,但在这种情况下,我期望 Camel 应该能够通过 mina2 路由消息,并且当我们阅读 HL7 消息时从我们的商务课程中发现了一个异常。但它没有,似乎 mina2 无法路由消息。
有什么线索吗?是否可以在 mina2 解析之前捕获 MLLP 消息,以确保我们的客户以正确的格式发送它?
我还有一个问题。我试图生成一个非常简单的 jUnit 类来向 String 消息发送消息,但我不知道如何实现 MLLP 消息,我的问题是:mina2 是不是这样(将 String 消息包装为 MLLP 格式) 还是在发送 HL7 消息之前我必须做的事情?
谢谢, 安德烈亚
【问题讨论】:
-
类路径上是否有正确的 JAR。 AFAIR hapi har JAR 用于存在的不同 hl7 版本。所以你可能也需要更新它,才能使用 v2.7 JAR。
标签: routing apache-camel hl7 hl7-v2 mllp