Verwenden von KSOAP mit Android. Probleme mit dem benutzerdefinierten Namespace
-
27-10-2019 - |
Frage
Hier ist mein großes Problem. Ich versuche mit dieser Anfrage ein bestimmtes WS aufzurufen:
Hier ist mein Java -Code, der in einem Android -Projekt verwendet wird:
Ist es zunächst möglich, die von dieser Anfrage generierte XML auszudrucken? Wie auch immer, das von meiner Anfrage zurückgegebene Ergebnis ist immer ein "Fehler". Ich denke, das liegt daran, dass das SetReport -Tag einen bestimmten Namespace verwendet. ? Mit anderen Worten, wie kann ich einen Umschlag mit XMLNS erstellen: xs = "http://ws.comunichiamo.com"?
Lösung
Sie haben den Namespace bereits beim Erstellen des SoapObject
Und das ist der richtige Weg.
Sie können die realen Zeichenfolgen zwischen Client und Server durch Einstellen erhalten
androidHttpTransport.debug = true;
und dann in den Blick auf androidHttpTransport.requestDump
und responseDump
Nach der Anfrage.
(Was ist ein "Fehler"? Ist es eine Ausnahme? Was sagt es?)
Einige Hinweise: Sie müssen den Typ nicht für primitive wie String und INTs festlegen. Wenn Sie die letzte Version von KSOAP2 verwenden, sollte es eine geben HttpTransportSE
Klasse, die vorgeschlagen wird, anstelle von zu verwenden AndroidHttpTransport
.
(+1 pro Benutzer e Passwort;))