2010-10-16 26 views
5

Possible en double:
Parsing ksoap2 responseréponse Parse KSoap2 dans Android

Je réussi à appeler un webservice en utilisant KSoap2 dans Android, mais je ne peux pas trouver un moyen d'analyser la réponse. ..

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; }; }; 
} 

Et voici le code que je utilise pour appeler le webservice ...

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(); 
     } 

Est-il possible de l'analyser « facilement » sans avoir à tant par chaque propriété « manuellement »? Quelque chose comme un parseur XML ...

Répondre

1

Vous pouvez configurer le regroupement automatique. Consultez la section des liens sur le projet ksoap2-android pour des liens vers des tutoriels.