The HL7 Transport ( New in Carbon 4.0 ) is available as an installable feature in WSO2 products. The user can simply plug it in if necessity, through the installation of the relevant feature. For instructions to install HL7 transport and adding a proxy service, refer to
The HL7 transport configuration is as follows
<transportConfig> <transportReceiver name="hl7" class="org.wso2.carbon.business.messaging.hl7.transport.HL7TransportListener"> <parameter name="port">9292</parameter> </transportReceiver> <transportSender name="hl7" class="org.wso2.carbon.business.messaging.hl7.transport.HL7TransportSender"> <!--parameter name="non-blocking">true</parameter--> </transportSender> </transportConfig>
HL7 Transport supports the following in "Axis2 Transport HL7" feature version 4.0.0 onwards.
HL7 Conformance Profile Support
The service-level parameter "transport.hl7.ConformanceProfilePath" points to a URL where the conformance profile XML can be found.
HL7 Message Pre-Processing
An implementation of the interface "org.wso2.carbon.business.messaging.hl7.common.HL7MessagePreprocessor" can be used to process raw HL7 messages before parsing them, so that potential errors in the messages can be rectified using it. The service-level parameter used to mention the implementation class is "transport.hl7.MessagePreprocessorClass".
Non-MLLP Transport and ACK/NACK Generation
When using a transport like HTTP, if you want to create an ACK/NACK message from an HL7 message in the flow, specify an axis2 scope message context property "HL7_GENERATE_ACK", and set its value to true. It ensures that an ACK/NACK message is created automatically when a message is sent out (using the HL7 formatter). By default, an ACK message is created. If a NACK message is required to be generated, the message context properties "HL7_RESULT_MODE" and "HL7_NACK_MESSAGE" have to be used.
Synchronization with Builder/Formatter
The transport listener/sender, message builder/formatter uses a common implementation of parsing/validation logic of HL7 messages. Set the Java system property "ca.uhn.hl7v2.llp.charset" to control the encoding type of incoming messages. More information about this configuration will be coming up soon.