ich ein Android-App über Wsdl gerade abgeschlossen haben, habe ich einige Tipps anhängen:
1.die wichtigste Ressource ist www.wsdl2code.com
2. Sie können Sie Benutzernamen und Passwort mit Kopf nehmen, die mit Base64 codiert, wie zum Beispiel:
String USERNAME = "yourUsername";
String PASSWORD = "yourPassWord";
StringBuffer auth = new StringBuffer(USERNAME);
auth.append(':').append(PASSWORD);
byte[] raw = auth.toString().getBytes();
auth.setLength(0);
auth.append("Basic ");
org.kobjects.base64.Base64.encode(raw, 0, raw.length, auth);
List<HeaderProperty> headers = new ArrayList<HeaderProperty>();
headers.add(new HeaderProperty("Authorization", auth.toString())); // "Basic V1M6"));
Vectordianzhan response = bydWs.getDianzhans(headers);
3.somethimes, Sie nicht sicher sind, entweder ANDROID-Code oder Webserver falsch ist, dann debuggen die Probe important.in , abfangen von "XmlPullParserException", "requestDump" und "responseDump" in der Ausnahme protokollieren. Zusätzlich sollten Sie das IP-Paket mit adb abfangen.
try {
Logg.i(TAG, "2 ");
Object response = androidHttpTransport.call(SOAP_ACTION, envelope, headers);
Logg.i(TAG, "requestDump: " + androidHttpTransport.requestDump);
Logg.i(TAG, "responseDump: "+ androidHttpTransport.responseDump);
Logg.i(TAG, "3");
} catch (IOException e) {
Logg.i(TAG, "IOException");
}
catch (XmlPullParserException e) {
Logg.i(TAG, "requestDump: " + androidHttpTransport.requestDump);
Logg.i(TAG, "responseDump: "+ androidHttpTransport.responseDump);
Logg.i(TAG, "XmlPullParserException");
e.printStackTrace();
}
nett. Mach weiter so! – DeliveryNinja