Comment envoyer une requête soap dans android?
Je suis nouveau sur le WSDL des services web , en utilisant KSoap2 bibliothèque d'appeler wsdl des services web dans android .
C'est mon savon demande de vidage
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:loy="http://loyalcard.com/LoyalCardWebService/">;
<soapenv:Header/>
<soapenv:Body>
<loy:GetOffersByLocation>
<!--Optional:-->
<loy:Location>
<!--Optional:-->
<loy:Latitude>?</loy:Latitude>
<!--Optional:-->
<loy:Longitude>?</loy:Longitude>
</loy:Location>
</loy:GetOffersByLocation>
</soapenv:Body>
</soapenv:Envelope>
Je suis de passage ce SopaObject comme :
PropertyInfo latitude = new PropertyInfo();
latitude.name="Latitude";
latitude.type=Double.class;
latitude.setValue(32.806673);
PropertyInfo longitude = new PropertyInfo();
longitude.name="Longitude";
longitude.type=Double.class;
longitude.setValue(-86.791133);
SoapObject results = null;
String methodName = "OffersByLocation";
String actionName = "http://loyalcard.com/LoyalCardWebService/GetOffersByLocation";
SoapObject request = new SoapObject(NAMESPACE,methodName);
request.addProperty(latitude);
request.addProperty(longitude);
Suis ici de passage valeurs de latitude et longitude directement à OffersByLocation , je doit passer à travers la position d'élément . S'il vous plaît peut-on aider comment passer des paramètres par le biais de l'Emplacement .
J'ai essayé avec la procédure ci-dessus, mais je suis d'erreur disant
06-17 11:52:55.934: WARN/System.err(350): SoapFault - faultcode: 'soapenv:Server' faultstring: 'org.apache.axis2.databinding.ADBException: Unexpected subelement Latitude' faultactor: 'null' detail: org.kxml2.kdom.Node@44f6ddc0
S'il vous plaît peut-on me dire comment faire pour passer au dessus d'une Requête soap de vidage dans le Savon Objet ?
Ce qui concerne,
Srinivas
OriginalL'auteur Srinivas | 2011-06-17
Vous devez vous connecter pour publier un commentaire.
Vous pouvez également construire manuellement la requête XML, et de l'envoyer à kSOAP pour l'envoi et la réponse de traitement. Vous pouvez écrire votre requête XML à l'aide de soapUI, puis les enregistrer dans
res/raw
avec des mots-clés comme{%key%}
où les paramètres doivent être placés à l'exécution.Voici le code pour remplacer les mots clés:
Pour envoyer des données XML personnalisées demande avec kSOAP vous avez besoin pour faire votre propre classe de Transport.
Ou vous pouvez envoyer la demande manuellement à l'aide de
DefaultHttpClient
(voir À l'aide de client/serveur de certificats pour les deux sens de l'authentification SSL support sur Android), et l'utilisation kSOAP juste pour l'analyse de la réponse.OriginalL'auteur peceps
Vous avez à faire votre propre générateur xml de classe pour le faire. Je suis également en utilisant la même procédure. décompiler le ksoap2 de la bibliothèque et de l'étude de la façon dont ils génèrent et de le modifier comme vous avez exigé..
OriginalL'auteur Hamdullah shah
Vous pouvez l'utiliser comme ça.
J'espère que cela peut aider u
Grâce,
Chaitanya
OriginalL'auteur