我有一個ASP.NET WebService
如果輸入條件錯誤會引發異常。Android ksoap2句柄ASP.NET例外
如果它被另一個C#/ ASP.NET應用程序客戶端調用,他們可以正確解釋異常。
但是如果它被ksoap2調用,我會得到一個HTTP狀態500。
我可以知道什麼是我處理此異常的最佳方式,最重要的是檢索該異常中的錯誤消息,以便我可以向用戶顯示。
在此先感謝。
----添加下面的代碼:
ASP.NET Web服務
[WebMethod]
public void Test()
{
throw new Exception("This is a test message");
}
的Android客戶端ksoap2
// There are some details been obmitted. Just assume the code below works ok?
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL, 60000);
try
{
// The Web Service in ASPNET is invoked successfully. And an Exception is thrown.
androidHttpTransport.call(SOAP_ACTION, envelope);
SoapObject obj;
obj = (SoapObject)envelope.getResponse();
}
catch (Exception e)
{
// Manage to reach here. But How can I retrieve the Fault Message "This is a test message"?
e.printStackTrace();
}
它基本上是'響應代碼'。你可以檢查它是否是'404,500,403'等等,並根據你的需要顯示敬酒或其他東西。 – Prateek 2013-03-12 06:03:25
是的,我只收到響應碼505.但事實是,SOAP錯誤帶有一條消息。 ASPNET客戶端將能夠檢索該特定消息。但是ksoap2客戶端不。 – 2013-05-19 08:35:08