首页 文章

Spring Boot返回Whitelabel错误页面而不是JSON

提问于
浏览
0

无论是否有错误,我都需要RESTful服务来每次都返回JSON . 在正常情况下一切正常,但是当异常来临时我会看到 Whitelabel Error Page .

我试图以两种方式解决这个问题 .

通过使用@RestController注释的类里面的@Controller类中的@ExceptionHandler:

@ExceptionHandler(MyCustomException.class)
@ResponseBody
public ErrorResponse handleException(Exception e) {
    return new ErrorResponse(5, "Error message");

}

并通过@ControllerAdvice注释的特殊类:

@ControllerAdvice
public class ExceptionController {

    @ExceptionHandler(MyCustomException.class)
    @ResponseBody
    @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
    public ErrorResponse handleSecurityException(MyCustomException e) {
        return new ErrorResponse(5, "Error message");
    }

}

在这两种情况下,通过断点我看到那些方法被调用,但我仍然收到 Whitelabel Error Page .

那么我错过了什么或做错了什么?

1 回答

  • 0

    问题是我忘了为ErrorResponse类实现getter和setter .

相关问题