Bonjour,
Actuellement novice dans le développement Android, je tente de mettre en place une app qui permet de récupérer des données d'un web service.
Le web service à disposition est développé en Java, il utilise Jax-ws et la norme SOAP 1.2.
Pour consommer ce web service dans une app android, j'ai utilisé la librairie KSOAP2.
La connexion au web service se passe bien voici mon code :
soapResult contient bien la réponse de mon webservice.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 private static final String NAMESPACE ="http://ContratsRegionDWHService"; private static final String URL = "http://localhost:8080/ContratsRegionDWH/ws/contrat?wsdl"; private static final String METHOD_NAME = "contratsRegionDWH"; private static final String SOAP_ACTION = "http://ContratsRegionDWHService/contratsRegionDWH"; public static SoapObject soap(String property, String value) throws IOException, XmlPullParserException { SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope( SoapEnvelope.VER11); envelope.setOutputSoapObject(request); HttpTransportSE androidHttpTransport = new HttpTransportSE(URL); androidHttpTransport.call(SOAP_ACTION, envelope); SoapObject soapResult = (SoapObject) envelope.getResponse(); return soapResult; }
Le problème que je rencontre est que le retour de soapResult est de la forme : anyType{contratRegionDTO=anyType{}; }
Le web service retourne en DTO qui contient plusieurs champs.
Voici la réponse SOAPUI
Je voudrais récupérer la valeur des champs libelleRegion et codeRegion
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:contratsRegionDWHResponse xmlns:ns2="http://ContratsRegionDWHService"> <return> <contratRegionDTO libelleRegion="Region Nord" codeRegion="R250"/> </return> </ns2:contratsRegionDWHResponse> </S:Body> </S:Envelope>
J'ai vu que je devais utiliser un parser xml mais je n'arrive pas à accéder au dto. Quelqu'un a déjà rencontré ce problème ?
Partager