2010-04-26 27 views
2

我試圖用ksoap來調用一個簡單的web服務。我跟着this video嘗試着手。當我在信封上調用「getResponse()」時,我只是得到字符串「Error」。沒有拋出異常或任何其他細節。我已成功連接到我剛剛在本地計算機上設置的簡單Web服務。這可能與在這裏工作的代理服務器背後有關嗎?我的代碼如下:從Android使用KSoap簡單地返回「錯誤」字符串調用webservice字符串

String SOAP_ACTION="http://tempuri.org/CelsiusToFahrenheit"; 
String METHOD_NAME = "CelsiusToFahrenheit"; 
String NAMESPACE = "http://tempuri.org"; 
String URL = "http://w3schools.com/webservices/tempconvert.asmx"; 

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 
PropertyInfo pi = new PropertyInfo(); 
pi.setName("Celsius"); 
pi.setValue("32"); 
request.addProperty(pi); 

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 
envelope.dotNet = true; 
envelope.setOutputSoapObject(request); 

HttpTransportSE aht = new HttpTransportSE(URL); 

try 
{ 
    aht.call(SOAP_ACTION, envelope); 
    SoapPrimitive results = (SoapPrimitive)envelope.getResponse(); 
} 
catch (Exception e) 
{ 
    e.printStackTrace(); 
} 

回答

1

原來我在命名空間後面缺少'/'。花了太多時間弄清楚了。

1

你應該寫這樣的命名空間。

String NAMESPACE = "http://tempuri.org"/;