2013-11-03 95 views
0

我正在PHP中開發位置web服務。 wsdl和消息傳遞結構已完成,但我遇到了響應消息的問題。對於某些肥皂客戶端,結果不顯示。有人可以告訴這條消息有什麼問題嗎?不是由客戶端確定的SOAP信封響應

<?xml version="1.0" encoding="UTF-8"?> 
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
       xmlns:ns="http://asimishaq.com/wsdl/TestServices/IPLocation" 
       xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <soap:Body> 
     <ns:getCountryNameByIpResponse> 
     <ns:result>Chicago, IL, UNITED STATES (US)</ns:result> 
     </ns:getCountryNameByIpResponse> 
    </soap:Body> 
</soap:Envelope> 

該服務的WSDL是在以下位置:

http://asimishaq.com/wsdl/TestServices/IPLocation?wsdl

回答

0

我檢查你的WSDL和我注意到缺少這樣的定義:

xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 

這個定義我用所有wsdl標籤。例如:

<wsdl:definitions (...) > 
    <wsdl:types> 
    <xs:schema (...) 

</wsdl:types> 
    <wsdl:message (...) 

但它不能解決您的問題。

對於某些soap客戶端,結果不顯示。

我認爲答案是正確的。調用此Web服務可能會有問題。如果一個soap客戶端有效,你可以將這個代碼與那個不起作用的客戶端代碼進行比較。如果可能請記錄此請求,並使用soapUi或其他測試客戶端來測試此請求。

你可以分享肥皂客戶端結果不顯示嗎?