1

我有以下方法:

    @ExceptionHandler(InvalidPriceUpdateException.class)
    @ResponseStatus(HttpStatus.BAD_REQUEST)
    public String handleInvalidPriceUpdateException(InvalidPriceUpdateException e) throws JsonProcessingException {
        return objectMapper.writeValueAsString(new HttpErrorDTO(e.getMessage()));
    }

我看到(在调试中)它调用但在浏览器中我看到 500 错误(而不是 HttpStatus.BAD_REQUEST)。http响应的内容包含异常信息(而不是HttpErrorDTO结构)。

我的代码有什么问题?

4

1 回答 1

1

这是因为您要返回一个String,您应该在其中真正构建整个ResponseEntity. 例如,请阅读此处了解这意味着什么以及如何构建一个。

于 2017-05-02T17:00:39.910 回答