Si vous avez besoin seulement une méthode pour appeler une méthode WebService, utilisez ceci:
public static SoapPrimitive callWebServiceMethod(String url,
String namespace, String methodName,
HashMap<String, Object> parameters, String soapAction)
throws IOException, XmlPullParserException, SoapFault {
SoapObject request = new SoapObject(namespace, methodName);
if (parameters != null) {
String[] keys = new String[0];
keys = (String[]) parameters.keySet().toArray(keys);
Object[] vals = (Object[]) parameters.values().toArray();
for (int i = 0; i < parameters.size(); i++) {
request.addProperty(keys[i], vals[i]);
}
}
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(url,
60 * 1000);
androidHttpTransport.call(soapAction, envelope);
return (SoapPrimitive) envelope.getResponse();
}
et dans votre activité:
private static final String NAMESPACE = "http://tempuri.org/";
private static final String METHOD_NAME = "MethodName";
private static final String SOAP_ACTION = "http://tempuri.org/MethodName";
String url = "http://...";
HashMap<String, Object> parameters = new HashMap<String, Object>();
parameters.put("param1", param1);
parameters.put("param2", param2);
//...
SoapPrimitive response = callWebServiceMethod(url,
NAMESPACE, METHOD_NAM, parameters,
SOAP_ACTION);
String webServiceResult = response.toString();
Si vous pouvez renoncer à utiliser DataTable et Utilisez vos propres objets et collections Je peux vous envoyer un échantillon pour appeler webMethod et utiliser json – breceivemail
Qu'en est-il de 'KusmanCustomAdapter'? Est-ce qu'il remplit les données? – kisp
@breceivemail pas vraiment, j'ai besoin d'appeler cette webmethod :(Je sais ce que vous voulez dire et je l'utilise quand je crée un service web mais cette fois je dois utiliser de cette façon –