2013-06-01 47 views
1

當我使用了SoapUI調用this web service我得到正確的響應,但是當我實現這在Android中,我得到了下面的異常,獲取異常,同時呼籲肥皂web服務

system.web.services。 protocols.soapheaderexception(缺少一些信息)。

這是我試過,

 HttpPost httppost = new HttpPost("http://www.ocrwebservice.com/services/OCRWebService.asmx"); 
     StringEntity se = new StringEntity(SOAPRequestXML,HTTP.UTF_8); 
     se.setContentType("text/xml"); 
     httppost.setHeader("Content-Type", "text/xml;charset=UTF-8"); 
     httppost.setEntity(se); 
     HttpClient httpclient = new DefaultHttpClient(); 
     BasicHttpResponse httpResponse = 
     (BasicHttpResponse) httpclient.execute(httppost); 
    HttpEntity resEntity = httpResponse.getEntity(); 

我試過其他組合也很喜歡, httppost.setHeader("Accept-Charset","utf-8")httppost.setHeader("Content-Type","application/soap+xml;charset=UTF-8")

但毫無效果。

錯誤說,

System.Web.Services.Protocols.SoapHeaderException:WSE012:動作:因爲以下信息丟失的輸入是不是有效的SOAP消息。動作:

+0

能否請您補充stacktace? – Chris

+0

你可以分享wsdl嗎? –

+0

http://www.ocrwebservice.com/services/OCRWebService.asmx這是wsdl – user2443383

回答

3

System.Web.Services.Protocols.SoapHeaderException:WSE012:由於以下信息 缺少輸入 不是有效的SOAP消息。

=>根據上述例外情況,我可以說你忘了設置Action。

嘗試:

String SOAP_ACTION = "http://stockservice.contoso.com/wse/samples/2005/10/OCRWebServiceAvailablePages"; 
httppost.setHeader("SOAPAction", SOAP_ACTION); 
+0

嘿,謝謝,工作。 – user2443383

+0

@ user2443383乾杯....並歡迎SO。 –

+0

@ user2443383不是問題!請享用 –