0

エラーページを設定することは可能ですが、それはすべての URI に対してではなく、たとえば /custom-path でトリガーされるべきであり、URI の /main-path を使用したリクエストはエラーを処理しませんか?

web.xml では、エラー ページを特定の例外タイプと一致させることしかできないと思います。

問題は、残りの api と html 管理 UI の両方が含まれる 1 つの war ファイルがあることです。したがって、エラーが REST API から発生した場合は、そのままレンダリングされ、エラー ページは表示されません。

4

1 に答える 1

0

私は同じ問題を抱えていましたが、例外をスローしたり sendError() を呼び出したりする代わりに、HttpServletResponse で setStatus() を呼び出して解決しました。

私の Spring MVC コントローラーの例:

@RequestMapping(value = "/{ean}", method = RequestMethod.GET)
@ResponseBody
public User getUser(@PathVariable("id" Long id, HttpServletResponse response) {

    // response.sendError(HttpServletResponse.SC_NOT_FOUND)
    response.setStatus(HttpServletResponse.SC_NOT_FOUND)
}

このようにして、RESTful API コントローラーはエラー ページをレンダリングしません。

于 2012-08-14T22:13:51.117 に答える