2010-10-16 3 views
5

Возможный дубликат:
Parsing ksoap2 responseАнализировать KSoap2 ответ на андроид

Так мне удалось вызвать WebService с помощью KSoap2 в андроида, но я не могу найти способ, чтобы разобрать ответ. ..

So here's what I receive from the webservice 
anyType{ 
WORCCategoriaSubcategoriaRecord=anyType{ssENCategoria=anyType{Id=1; Nome=Problema na rua; }; ssENSubcategoria=anyType{Id=1; Nome=Falta de acesso; Imagem=anyType{}; CategoriaId=1; }; }; 

WORCCategoriaSubcategoriaRecord=anyType{ssENCategoria=anyType{Id=1; Nome=Problema na rua; }; ssENSubcategoria=anyType{Id=2; Nome=Falta de Passadeira; Imagem=anyType{}; CategoriaId=1; }; }; 
} 

И вот код, я использую для вызова веб-сервиса ...

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 
     //request.addProperty("Celsius", "32"); 

     SoapSerializationEnvelope soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 
     //soapEnvelope.dotNet = true; 
     soapEnvelope.setOutputSoapObject(request); 
     soapEnvelope.dotNet = true; 
     AndroidHttpTransport aht = new AndroidHttpTransport(URL); 
     try{ 
      aht.call(SOAP_ACTION, soapEnvelope); 
      //SoapPrimitive resultString = (SoapPrimitive)soapEnvelope.getResponse(); 
      SoapObject resultsRequestSOAP = (SoapObject) soapEnvelope.bodyIn; 
      int elementCount = resultsRequestSOAP.getPropertyCount(); 

      if(elementCount>0){ 
       SoapObject element; 
       for(int i = 0;i<elementCount;i++){ 
        element = (SoapObject)resultsRequestSOAP.getProperty(i); 
       } 
      } 

     }catch(Exception ex){ 
      ex.printStackTrace(); 
     } 

Есть ли способ разобрать его «легко», без необходимости в каждом свойстве «вручную»? что-то вроде анализатора XML ...

ответ

1

Вы можете настроить автоматическое сортирование. Просмотрите раздел ссылок в проекте ksoap2-android для ссылок на некоторые учебные пособия.

Смежные вопросы