streamingresponsebody中的异常处理不起作用

pkln4tw6  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(193)

我正在尝试捕获在实现中抛出的异常 StreamingResponseBody ,我可以看到异常在类中抛出,但是抛出的异常我的处理似乎可以工作,但是我无法获得自定义消息,我的响应代码是 200 .

@GetMapping(path = "/test", produces = "application/json")
public StreamingResponseBody test(@RequestParam(value = "var1") final String test) throws IOException{
    return new StreamingResponseBody() {
        @Override
        public void writeTo(final OutputStream outputStream) throws IOException{
            try {
                // Some operations..
            } catch (Exception MyExceptione e) {
                throw new MyException(e);
            }
        }
    };
}

@ExceptionHandler(MyException.class)
public ResponseEntity handleMyException(MyException exception) {
    return ResponseEntity.status(exception.getHttpStatus()).body(
            ErrorDTO.builder()
                    .message(exception.getMessage())
                    .description(exception.getHttpStatus().getReasonPhrase())
                    .build());
}

我希望我的 ControllerAdvice 返回 ResponseEntity 用一个 Http Status 500英镑。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题