Преобразование HL7 v2 в XML с использованием маршрутов Apache Camel

Я новичок в HL7. Мне нужно преобразовать HL7v2 в XML, используя маршруты Apache Camel. Я извлекаю сообщение HL7 из файла. Может ли кто-нибудь помочь мне, как преобразовать HL7 в XML


person user3616159    schedule 08.05.2014    source источник


Ответы (1)


Существует компонент HL7 для преобразования файла в сообщение HAPI. API-интерфейс HAPI также включает XMLParser, который преобразует сообщение в XML. Таким образом, вы сможете объединить их в простой верблюжий маршрут, как показано ниже:

<bean id="hl7XmlConverter" class="example.Hl7XmlConverter" />

<bean id="hl7FileFilter"
    class="org.apache.camel.component.file.AntPathMatcherGenericFileFilter">
    <property name="includes" value="*.hl7" />
</bean>

<camelContext xmlns="http://camel.apache.org/schema/spring">

    <route id="hl7FileRoute">
        <from
            uri="file:///tmp/test/?delete=true&amp;moveFailed=.error&amp;filter=#hl7FileFilter" />
        <convertBodyTo type="java.lang.String" />
        <log message="HL7 Request: ${body}" />
        <unmarshal>
            <hl7 validate="true" />
        </unmarshal>
        <bean ref="hl7XmlConverter"/>
        <log message="HL7 Response: ${body}" />
    </route>
</camelContext>

Где bean - это просто простой метод:

public String convertMessage(Message message) throws HL7Exception{
    XMLParser parser = new DefaultXMLParser();
    return parser.encode(message);
}

В зависимости от желаемого формата xml вы также можете добавить xslt после bean-компонента.

person knt    schedule 09.05.2014