簡體   English   中英

ksoap2 android發送數據

[英]ksoap2 android sending data

我正在嘗試讓ksoap2在android上工作。 我現在已經花費了至少10個小時來閱讀論壇帖子和文檔。 只需查詢諸如getServerTime之類的方法即可,而不必發送任何值。 我的目標是發送數據並接收響應。 例如:發送城市名稱,獲取城市時間。

我正在此網站上練習: http : //www.nanonull.com/TimeService/TimeService.asmx

這是我的代碼:

  String METHOD_NAME = "getCityTime";
  String SOAP_ACTION = "http://www.Nanonull.com/TimeService/getCityTime";
  String NAMESPACE = "http://www.nanonull.com/TimeService/";
  String URL = "http://www.nanonull.com/TimeService/TimeService.asmx";

  SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

  request.addProperty("city", "Chicago");

  SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
    SoapEnvelope.VER11);

  envelope.setOutputSoapObject(request);

  HttpTransportSE httpTransport = new HttpTransportSE(URL);
  try {
   httpTransport.call(SOAP_ACTION, envelope);
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (XmlPullParserException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } // This sends a soap

  System.out.println(envelope.bodyIn.toString());

這是我得到的錯誤(envelope.bodyIn.toString()):

SoapFault - faultcode: 'soap:Server'
faultstring: 'Server was unable to process request. ---> Object reference not set to an
instance of an object.' faultactor: 'null' detail: org.kxml2.kdom.Node@435b9cf8

非常感謝幫助。

嘗試

   envelope.dotNet = true;

我得到了答案! 服務器故障,服務器端出了問題! :(

我嘗試了另一項服務( http://footballpool.dataaccess.eu/data/info.wso嗎?),它的工作原理很吸引人。

 SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

soapobjet sp = new soapobject("http://www.nanonull.com/TimeService/","getCityTime");
sp.addproperty("city", "Chicago");

request.addsoapobject(sp);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM