1

ビューでjavascriptによって消費されるjsonエラーオブジェクトを生成する、このような例外ハンドラーがあります。

@ControllerAdvice
public class ExceptionHandlerController {


    @ExceptionHandler(value = Exception.class)
    @ResponseBody
    public final JsonResponse<Void> handleJsonException(
            final Exception e,
            final HttpServletRequest request,
            final HttpServletResponse response) {
        response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
        return new ErrorJsonResponse(e);
    }

}

このメソッドを通常のポストバック (非 json) リクエストに対して実行したくありません。したがって、これらの種類の例外は、WEB.XML で構成されたエラー ページによって処理されるようにしたいと考えています。

<error-page>
    <error-code>500</error-code>
    <location>/500</location>
</error-page>

json を返す @RequestMapping メソッドで、生成値を明示的に設定しました。

@RequestMapping(value = "/dosomething",
        method = RequestMethod.POST,
        produces = MediaType.APPLICATION_JSON_VALUE)

生成コンテンツタイプに基づいて特定の例外ハンドラーを使用するようにSpringに指示するにはどうすればよいですか?

4

1 に答える 1