在非映射方法中重定向到错误页面

时间:2017-03-01 16:52:07

标签: spring-mvc spring-boot

我一直在寻找一种方法,在没有映射/直接请求的方法中重定向到错误页面,但是从带有一个方法的方法调用。

示例:

//调用方法

@GetMapping("/")
public String listUploadedFiles() {    
    doSomething(); // redirect if error must happen in side this method!
    return "uploadForm";
}

//重定向应该发生的方法

public void doSomething()
{
    try {
        // try some code here
    } catch(Exception e) {
       // call a method which redirects to an error page
    } 
}

上面的方法是从具有映射的方法调用的,我想直接在发生异常的方法中重定向到错误。春季靴子可以吗?

1 个答案:

答案 0 :(得分:1)

您可以在

中使用@ExceptionHandler
@GetMapping("/")
public String listUploadedFiles() {    
    doSomething(); // redirect if error must happen in side this method!
    return "uploadForm";
}


public void doSomething() {
    try {
        // try some code here
    } catch(Exception e) {
       throw new YourException();
    } 
}

@ExceptionHandler(YourException.class)
public String handleYourException(YourException e) {
    return "errorPage";
}