3

私のアプリケーションでは、web.xml でエラー ページを構成しました。条件に基づいて、特定のコントローラーに対してそれをオーバーライドする必要があります。ここで、条件が true になったときに、特定のエラー ページにリダイレクトする必要があります。それ以外の場合は、通常のエラー ページをレンダリングする必要があります。これがコードです。私を助けてください。

@Controller
public class Test{

 @ExceptionHandler(Exception.class)
 public ModelAndView generateException(HttpServletRequest httpServletRequest){
  if(condition) {
   return new ModelAndView("myError.jsp");
  } else {
   //should execute default error page.
  }
 }
}
4

1 に答える 1

5

DefaultHandlerExceptionResolver によって処理される例外を再度スローして、web.xml で定義されたエラー ページで応答します。コントローラーの同じ例外ハンドラーは呼び出されません。

@ExceptionHandler(Exception.class)
public ModelAndView generateException(Exception ex) throws Exception{
    if(condition) {
        return new ModelAndView("myError.jsp");
    } else {
        //should execute default error page.
        throw ex;
    }   
}
于 2012-11-07T12:07:55.423 に答える