Converter available options
import ca.uhn.hl7v2.DefaultHapiContext;
import ca.uhn.hl7v2.HL7Exception;
import ca.uhn.hl7v2.HapiContext;
import ca.uhn.hl7v2.model.Message;
import ca.uhn.hl7v2.parser.EncodingNotSupportedException;
import ca.uhn.hl7v2.parser.Parser;
import ca.uhn.hl7v2.parser.GenericParser;
import com.sap.gateway.ip.core.customdev.util.Message;
import java.util.HashMap;
def Message processData(Message message) {
def String body_enconded = "";
def body = message.getBody(java.lang.String);
//Instantiate parser
HapiContext context = new DefaultHapiContext();
GenericParser parser = new GenericParser(context);
try {
//First clean the XML
body = cleanXML(body, message);
//and then parse method performs the actual parsing & encoding
ca.uhn.hl7v2.model.Message msg = parser.parse(body);
body_enconded = parser.encode(msg);
} catch (EncodingNotSupportedException e) {
body_enconded = "EncodingNotSupportedException: " + e.toString();
} catch (HL7Exception e) {
body_enconded = "HL7Exception: " + e.toString();
}
message.setBody(body_enconded);
return message;
}
def java.lang.String cleanXML(java.lang.String xml_str, Message message) {
//get externalized parameter and replace it
def map = message.getProperties();
def String input_namespace = map.get("input_namespace");
xml_str = xml_str.replaceAll("<", "<");
xml_str = xml_str.replaceAll(">", ">");
xml_str = xml_str.replaceAll("&", "&");
xml_str = xml_str.replaceAll("<n0:", "<");
xml_str = xml_str.replaceAll("</n0:", "</");
xml_str = xml_str.replaceAll(input_namespace, "urn:hl7-org:v2xml");
xml_str = xml_str.replaceAll("xmlns:n0=\"urn:hl7-org:v2xml\"", "xmlns=\"urn:hl7-org:v2xml\"");
return xml_str;
}
import ca.uhn.hl7v2.DefaultHapiContext;
import ca.uhn.hl7v2.HapiContext;
import ca.uhn.hl7v2.model.Message;
import ca.uhn.hl7v2.parser.PipeParser;
import ca.uhn.hl7v2.HL7Exception;
import ca.uhn.hl7v2.parser.EncodingNotSupportedException;
import ca.uhn.hl7v2.parser.XMLParser;
import ca.uhn.hl7v2.parser.DefaultXMLParser;
import com.sap.gateway.ip.core.customdev.util.Message;
def Message processData(Message message) {
//Body
def java.lang.String body = message.getBody(java.lang.String);
def java.lang.String XML = "";
HapiContext context = new DefaultHapiContext();
XMLParser xmlParser = (XMLParser)new DefaultXMLParser();
PipeParser pipeParser = new PipeParser();
try {
// The parse method performs the actual parsing
XML = xmlParser.encode(pipeParser.parse(body));
} catch (EncodingNotSupportedException e) {
XML = "EncodingNotSupportedException: " + e.toString();
} catch (HL7Exception e) {
XML = "HL7Exception: " + e.toString();
}
message.setBody(XML);
return message;
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
9 | |
8 | |
6 | |
5 | |
4 | |
4 | |
4 | |
3 | |
3 | |
3 |