2012-02-15 48 views
0

這是用於發佈一個XML文檔元素如何在Android中通過HTTP發佈XML文檔元素?

XmlString = @"<WOITEMS><WOITEM ACTION='I'>" + TransData + "</WOITEM></WOITEMS>"; 
XmlDocument xmlDoc = new XmlDocument(); 
xmlDoc.LoadXml(XmlString); 
saveRegisterItems(xmlDoc.DocumentElement); 

saveRegisterItems是接收的文檔元素,因爲它是參數的WCF服務方法在C#完成的代碼。我如何在Android中使用HttpPOST來做到這一點?我嘗試了下面的代碼。但是,它不起作用。

HttpResponse response = null; 
String myUrl = "http://"+Constants.strURL+"/ServiceOrders.svc/SaveRegisterItems"; 
HttpClient httpClient = new DefaultHttpClient(); 
HttpPost httpPost = new HttpPost(myUrl); 
StringEntity se = new StringEntity(XmlString, HTTP.UTF_8); 
se.setContentType("text/xml"); 
httpPost.setHeader("Content-Type", "application/soap+xml;charset=UTF-8"); 
httpPost.setEntity(se); 

我得到response.getStatusLine()爲「HTTP/1.1 200 OK」,但它沒有在服務器中更新。我認爲,傳遞一個XML文檔元素將做到這一點。請幫助

回答

0

當我更改httpPost.setHeader()方法的第二個參數時,我得到了解決方案。它應該是這樣的。

httpPost.setHeader("Content-Type", "application/xml;charset=UTF-8"); 

我通過EntityUtils.toString(entity)得到了正確的響應。