我們試圖在RoR中使用SOAP Web服務。使用SOAP :: WSDLDriverFactory用下面的代碼:在RoR中使用SOAP Web服務
wsdl = SOAP::WSDLDriverFactory.new("http://<domain>/WSDL/v4.0/iLON100.WSDL")
proxy = wsdl.create_rpc_driver
proxy.get({:iLonItem => [{:Item => {:UCPTname => "Net/LON/Motion406"}}]})
在得到服務的參數通過下面的XML表示:
<Get xmlns="http://wsdl.echelon.com/web_services_ns/ilon100/v4.0/message/">
<iLonItem>
<Item xsi:type="LON_Network_Cfg">
<UCPTname>MyNetwork</UCPTname>
</Item>
</iLonItem>
</Get>
但我不斷收到此錯誤:無不允許的:UCPTname
您可以通過設置'proxy.wiredump_dev = $ stdout'來打開一個wiredump。然後,將SOAP請求與您所期望的進行比較。 – 2011-03-23 12:32:57
謝謝。我認爲我的問題在於將這些XML結構轉換爲紅寶石哈希和/或數組,所以我可以將它作爲參數傳遞。 – 2011-03-23 13:09:57