2012-11-07 81 views
3

在我的應用程序中,我在web.xml中配置了一個錯誤頁面。我需要根據條件覆蓋特定的控制器。這裏當一個條件成爲真時,我需要重定向到一個特定的錯誤頁面,否則應該呈現正常的錯誤頁面。 這是代碼。請幫幫我。Spring中的@ExceptionHandler

@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. 
    } 
} 
} 

回答

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; 
    } 
} 
+0

謝謝vinay。太棒了。 – thrilling3

+0

如果您滿意,您是否願意接受它作爲答案? ;) – Vinay

相關問題