2012-02-25 19 views
0

httpTransport.call(SOAP_ACTION、envelope);AndroidでSap Soap Webサービスのレスポンスを表示するにはどうすればよいですか?

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呼び出しを実行しているアンドロイド

答えて

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 //オブジェクト結果= envelope.getResponse(); \t \t \t \t \t \t // SoapPrimitive result1 =(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) { } } – Venkat

+0

どうすればその例外を処理できますか? – Venkat

関連する問題