Swa*_*yam 4 arrays android web-services android-ksoap2
我试图在我的应用程序中使用.NET Web服务,其中服务返回一个对象数组作为响应.
这是来自Web服务的响应格式.
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPickersResponse xmlns="http://tempuri.org/">
<GetPickersResult>
<Picker>
<Id>int</Id>
<StartTime>dateTime</StartTime>
<EndTime>dateTime</EndTime>
<PickerCount>int</PickerCount>
</Picker>
<Picker>
<Id>int</Id>
<StartTime>dateTime</StartTime>
<EndTime>dateTime</EndTime>
<PickerCount>int</PickerCount>
</Picker>
</GetPickersResult>
</GetPickersResponse>
</soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)
这是我的Java代码,用于从Web服务获取响应.
SoapObject request = new SoapObject(NAMESPACE, METHOD_GET_CONTROL);
SoapSerializationEnvelope envelope =
new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try {
androidHttpTransport.call(SOAP_ACTION_GET_CONTROL, envelope);
..........=envelope.getResponse(); //To get the data. }
Run Code Online (Sandbox Code Playgroud)
我的问题是,我在源代码中替换"........"以接收来自服务的响应对象数组?我需要接收多个对象,然后使用他们各自的数据成员.
请帮忙.我是Web服务和Ksoap的新手.
获得多个响应只需在代码中添加几行而不是 ..........=envelope.getResponse();
SoapObject obj1 = (SoapObject) envelope.getResponse();
SoapObject obj2 =(SoapObject) obj1.getProperty(0);
for(int i=0; i<obj2.getPropertyCount(); i++)
{
SoapObject obj3 =(SoapObject) obj2.getProperty(i);
int id= Integer.parseInt(obj3.getProperty(0).toString());
String start_date = obj3.getProperty(1).toString();
String end_date = obj3.getProperty(2).toString();
int id= Integer.parseInt(obj3.getProperty(3).toString());
}
Run Code Online (Sandbox Code Playgroud)
如果您还有任何问题,可以写信给我.
归档时间: |
|
查看次数: |
17460 次 |
最近记录: |