2012-02-25 61 views
0

httpTransport.call(SOAP_ACTION,envelope);如何在Android中显示Sap Soap webservices响应?

SoapPrimitive response =(SoapPrimitive)envelope.getResponse();

我也用对象result = envelope.getResponse();

我使用的用于处理Android的响应上面的代码,但我得到了以下异常:

02-25 17:17:35.185: WARN/System.err(9786): org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG [{http://schemas.xmlsoap.org/wsdl/}wsdl:definitions targetNamespace='urn:sap-com:document:sap:soap:functions:mc-style'>@1:686 in [email protected])][1] 

你是如何执行的SOAP调用如何能处理的Android

回答

0

是例外?你在使用KSOAP2吗?在这种情况下,

  1. transport.debug = true

  2. 登录transport.responseDump在例外情况下。很可能你会收到错误消息,而不是正确的SOAP/xml响应。

你的文字问题是:“如何处理异常”。您可以通过在适当的尝试,除了包裹你transport.call做到这一点,即

try 
    { 
     transport.call(SOAP_ACTION, envelope); 
     // ... envelope.getResponse() ... 

    } 
    catch(XMLPullParserException e) 
    { 
     Log.e(TAG, e.getDetail(), e); 
     Log.d(TAG, transport.requestDump); 
     Log.d(TAG, transport.responseDump); 
    } 
+0

我是这样写的尝试 { \t \t \t androidHttpTransport.call(SOAP_ACTION,信封); \t \t // Object result = envelope.getResponse(); \t \t \t \t \t // \t RESULT1 SoapPrimitive =(SoapPrimitive)envelope.bodyIn; \t \t \t // System.out.println(“Result:”+ result1.toString()); \t SoapObject response =(SoapObject)envelope.getResponse(); \t \t System.out.println(“RESPONSE:”+ response); (例外e) { e.printStackTrace(); } – Venkat 2012-02-27 04:48:19

+0

我该如何处理该异常? – Venkat 2012-02-27 05:30:55