2017-10-05 65 views
0

第一次。我们将与外部服务进行沟通。 SOAP消息中的SOAP信封的一部分是userId和passWord。除此之外,我们需要基本执行一次哈希,每次调用服务时都会创建一个唯一标记。我需要这个XML有效载荷的一部分来自一个函数。是否有一种方法可以将一段数据插入到SOAP函数调用的结果中的SOAP Envelope中?所有的用欢笑需要配置数据欢乐Web服务发送者

回答

0

首先,你需要使用Web服务发送器连接器类型。在这个例子中,我选择了一个在线天气Web服务。

enter image description here

粘贴WSLD URL(橙色),并点击“获取操作”按钮(红色)

选择正确的服务后,点击“生成信封”按钮(红色),这将使一个肥皂存根为您。这样,在那里你可以使用这样$ {} VARIABLENAME

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://www.webserviceX.NET"> 
    <soapenv:Header/> 
    <soapenv:Body> 
     <web:GetCitiesByCountry> 
     <!--Optional:--> 
     <web:CountryName>${myGeneratedCountryName}</web:CountryName> 
     </web:GetCitiesByCountry> 
    </soapenv:Body> 
</soapenv:Envelope> 

变量对于变量的东西你需要用你的计算值,例如,一个javascript变压器进行填充。

创建一个新的目标和编辑变压。

enter image description here

然后你就可以使用JavaScript来计算你的价值。

enter image description here

最后一行是用来使变量和它的内容可用于Web服务发送者。它的工作原理就像一个Java地图

$co('myGeneratedCountryName',country); 

但是也有其他的方法,比如代码模板。如果您是Mirth Connect的新手,我建议您阅读涵盖此用例和其他许多内容的Mirth Connect User Guide