2017-10-05 39 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