【问题标题】:Handle constraintviolationexception in REST endpoint code处理 REST 端点代码中的约束违反异常
【发布时间】:2021-05-02 16:00:06
【问题描述】:

我有 JEE 应用程序,它暴露了 rest 端点,它在后端执行插入 sql 查询。有时查询执行会因约束违反异常而失败。我想处理异常,并在其余响应中将 http 状态代码设置为 409,任何指针我该如何实现?目前在响应中设置了 500 状态码。

【问题讨论】:

  • 如果您不发布相关代码,您将不会得到任何答案。这是普通的 Java 吗?春天 ? Java EE ? ...
  • @PeterMmm 修改描述

标签: java database rest exception


【解决方案1】:

在响应对象中设置状态

HttpResponse.setstatus() 

【讨论】:

  • 我知道如何设置http状态,我想了解如何处理约束违反异常并传播异常
  • @VaibhavR 你尝试过抛出声明吗?
【解决方案2】:

ConstraintViolationException 是一个未经检查的异常(继承自 RuntimeException),您不必强制捕获该异常,但您可以:

try {
     service.save(x);
} catch (ConstraintViolationException ex) {
     return Response.status(409)..build();
}

【讨论】:

    猜你喜欢
    • 2021-12-05
    • 1970-01-01
    • 2019-02-04
    • 1970-01-01
    • 2014-10-08
    • 2013-03-31
    • 1970-01-01
    • 2019-03-08
    • 1970-01-01
    相关资源
    最近更新 更多