ExceptionHandler调用但不影响http响应

时间:2017-05-02 16:38:06

标签: java spring spring-mvc exception-handling exceptionhandler

我有以下方法:

    @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结构)。

我的代码有什么问题?

1 个答案:

答案 0 :(得分:1)

这是因为您要返回String,您应该真正构建整个ResponseEntity。请阅读here,了解其含义以及如何构建一个。