Ksoap2 Android unexpected response type

I am trying to make a java web service call using ksoap2. I am using ksoap2-android-assembly-2.6.5-jar-with-dependencies.jar and the Android level 8 API.

Action Code:

private static final String SECURITY_NAMESPACE = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"; private static final String USERNAME_TOKEN_NAMESPACE = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"; private static final String PASSWORD_TYPE = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); Element usernameElement = new Element().createElement(SECURITY_NAMESPACE, "Username"); usernameElement.addChild(Node.TEXT, "username"); Element passwordElement = new Element().createElement(SECURITY_NAMESPACE, "Password"); passwordElement.setAttribute(null, "Type", PASSWORD_TYPE); passwordElement.addChild(Node.TEXT, "password"); Element usernameTokenElement = new Element().createElement(USERNAME_TOKEN_NAMESPACE, "UsernameToken"); usernameTokenElement.addChild(Node.ELEMENT, usernameElement); usernameTokenElement.addChild(Node.ELEMENT, passwordElement); Element securityElement = new Element().createElement(SECURITY_NAMESPACE, "Security"); securityElement.setAttribute(null, "mustUnderstand", "1"); securityElement.setPrefix(null, SECURITY_NAMESPACE); securityElement.addChild(Node.ELEMENT, usernameTokenElement); Element[] header = new Element[]{securityElement}; SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.headerOut = header; envelope.setOutputSoapObject(request); HttpTransportSE httpTransport = new HttpTransportSE(URL); httpTransport.debug = true; try{ httpTransport.call(SOAP_ACTION, envelope); SoapObject response = (SoapObject) envelope.getResponse(); }catch (Exception e) { Log.e("Soap", e.getMessage(), e); } 

When I make a call, I get the following exception:

 06-12 13:01:51.563: E/Soap(471): unexpected type (position:TEXT             U  n  ...@3 :97 in java.io.InputStreamReader@44f5de78 ) 06-12 13:01:51.563: E/Soap(471): org.xmlpull.v1.XmlPullParserException: unexpected type (position:TEXT             U  n  ...@3 :97 in java.io.InputStreamReader@44f5de78 ) 

Any ideas what could be causing this? Could this be something related to character encoding, gzip, or the wrong version of soap?

Any help would be greatly appreciated.

Thanks david

+6
source share

Source: https://habr.com/ru/post/917882/


All Articles