我有一个向 WCF Web 服务发送 HL7 v2 消息的目的地。我已经成功地将消息正确地发送到了 web 服务(在修复了各种编码问题之后),并且我可以确认消息正确地到达了 WCF 端点。但是,在论坛和文档中四处寻找之后,我无法正确解析我们收到的 ACK 以指示何时发生错误。
从 Web 服务返回的响应如下所示:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header/>
<s:Body>
<ProcessMessageResponse xmlns="http://www.bluewire-technologies.com/webservices">
<ProcessMessageResult>
MSH|^~\&|Epro|RGR|||||ACK||D||||||GBR|ASCII|
MSA|AE||Empty message|
ERR|^^^100|
</ProcessMessageResult>
</ProcessMessageResponse>
</s:Body>
</s:Envelope>
响应在 ProcessMessageResult 元素中包含一个 ACK。如何从响应中提取此 ACK 并将其作为目标的输出传递?Mirth 会自动解析 ACK 并确定有错误吗?
我曾认为我需要在目的地上使用某种转换器(称为“SOAP”)并使用以下内容:
var xml = responseMap.get('SOAP').getMessage();
然后提取 ProcessMessageResponse 元素,但 responseMap.get('SOAP') 返回 null 所以这似乎是错误的方法。