2012-05-01 11 views
1

Spring MVCを使用してSpring RESTサービスをコーディングしています。私は、任意の500(内部サーバーエラー)がJson文字列["内部サーバーエラー"]でHttp Status = 500およびHttp Bodyを持つjsonとしてパッケージ化された状態で送り返されるという要件を持っています。 これを行うには、OncePerRequestFilterを拡張し、Http Responseのステータスをチェックしています。私は必要なjsonレスポンスでボディを構築しています。 これは目的に役立ちますが、それは面倒です。同じ目的を達成するSpringで構成できる優れた設計原則やSpring/jsonクラスがありますか?一般的に500内部サーバーエラーをキャッチしてjsonを返す

-Gotz

答えて

1

私はあなたが次の構造を使用できると信じて:

1)いくつかのビューにマップHTTP 500エラー:お使いのコントローラで

<error-page> 
     <error-code>500</error-code> 
     <location>/errorView.htm</location> 
    </error-page> 

2)はどの意志表示を作成必要なJson情報を返します。

@RequestMapping(value="/errorView.htm",method = RequestMethod.GET) 
public String handleGet(HttpServletRequest req) { 
    res.setStatus(HttpServletResponse.SC_METHOD_NOT_ALLOWED); 
    res.setContentType("application/json"); 
    res.getWriter().print("{\Error"\:\"Internal Server Error\"}"); 
} 

希望します。

+0

はい、あります。ありがとう!!! – gotz

関連する問題