56.4. HL7 DataFormat
camel-hl7
JAR 附带了一个 HL7 数据格式,可用于 marshal 或 unmarshal HL7 模型对象。
HL7 数据格式支持 1 选项,如下所示。
Name | 默认 | Java 类型 | 描述 |
---|---|---|---|
validate |
| 是否默认验证 HL7 消息 Is。 |
-
marshal
= 从 Message 到字节流(在使用 HL7 MLLP codec 响应时可以使用) -
unmarshal
= 从字节流到消息(在从 HL7 MLLP 接收流数据时可以使用
要使用数据格式,只需实例化实例,并在路由构建器中调用 marshal 或 unmarshal 操作:
DataFormat hl7 = new HL7DataFormat(); from("direct:hl7in") .marshal(hl7) .to("jms:queue:hl7out");
在上面的示例中,HL7 是从 HAPI Message 对象到字节流并放在 JMS 队列上。
下一个示例相反:
DataFormat hl7 = new HL7DataFormat(); from("jms:queue:hl7out") .unmarshal(hl7) .to("patientLookupService");
在这里,我们将字节流解放成一个 HAPI Message 对象,后者被传递给我们的病人查找服务。
56.4.1. 片段分隔符
unmarshalling 不会通过将 \n
转换为 \r
来自动修复片段分隔符。如果
需要这个转换,则 org.apache.camel.component.hl7.HL7#convertLFToCR
为这个目的提供了一个方便的 表达式
。