6
我有一個RESTEasy服務,當發生服務器端錯誤時返回HTTP 500。我設法將一個主體附加到HTTP響應中,以便提供有關錯誤的更多詳細信息。這樣出來的服務的響應看起來是這樣的身體的HTTP 500響應?
HTTP/1.1 500 Internal Server Error
Server: Apache-Coyote/1.1
Content-Type: application/xml;charset=ISO-8859-1
Content-Language: en-US
Content-Length: 3251
Date: Thu, 14 Oct 2010 23:22:49 GMT
Connection: close
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><myErrorEnvelope><internalCode>123</internalCode><description>error details</description></myErrorEnvelope>
我有一個客戶端(Spring MVC的3.0 REST客戶端),我試圖捕捉HTTP 500和讀取響應的身體和反序列化myErrorEnvelope對象。我第一次捕獲RestClientException它正確地告訴我有一個HTTP 500響應,但似乎沒有辦法得到響應的主體。這是我不應該做的事嗎?我應該將錯誤對象作爲HTTP 200響應的主體返回嗎?我真的寧願返回HTTP 500與身體。
謝謝。