解決gSOAP開發中的序列化和反序列化型別不匹配的問題(No Deserializer found to deserialize)
阿新 • • 發佈:2019-02-19
用gSOAP開發完Google Search的Client端測試程式,一執行便跳出如下錯誤“No Deserializer found to deserialize a ':key' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.”而key正好是我傳遞給伺服器的一個引數,在google中搜索了一下發現很多朋友都遇到了類似的問題,從理論上說了一大堆,整個歸結為一句話,就是在序列化和反序列化是出現了型別不匹配的問題,但都沒能給出一個具體的解決方法。咱也不繞彎子了,直接把解決辦法列出來:用soapcpp2.exe編譯標頭檔案時加上引數-t
這是加引數-t前的xml資料:
<key>D1QFHLLv3ntR/Zfw2J23Gy2v0Kp</key>
這是加引數-t後的xml資料:
<key xsi:type="xsd:string">D1QFHLLv3ntR/Zfw2J23Gy2v0Kp</key>
你應該注意到了:第二次的資料加上了表示型別的xsi:type="xsd:string"