java - 自定义错误消息取决于 JSR 303 中的条件

标签 java hibernate bean-validation

我有以下代码:

    ....
    @AssertTrue(message = "I want to customize this message")
    public boolean isValidPrice() {
        if (...) {
            return false; // error message 1
        }
        if (...) {
            return false; // error message 2
        }
         if (...) {
            return false; // error message 3
        }
        return true;
    }

我需要根据条件返回不同的错误信息

是否 JSR 303允许这样做吗?

附言

error message 2如果 error message 1 则不应显示已经显示

最佳答案

不,这是不可能的。约束 validator 只知道返回了 false。无法知道返回 false 的原因。此外,isValidPrice 的实现不知道 @AssertTrue 约束。

关于java - 自定义错误消息取决于 JSR 303 中的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35336446/

相关文章:

json - Wildfly:ExceptionMapper 未通过 RestEasy JSR-303 Bean 验证触发

java - 以 Base64 和 utf-8 解码电子邮件主题字符串

java - 检查和交换按钮? GUI [有相应的操作命令吗?]

java - 如何在不使用集合 API 中的不可修改列表方法的情况下在 Java 中创建只读列表?

java - 为什么我的数据库仅在前两个 jsp 表单提交时更新成功?

Java ZonedDateTime 保存在数据库中

java - 如何使用 Java 应用程序在数据库中插入基于计划的查询?

java - JSR303 复合注解

java - 为什么这个简单的 Spring Boot 应用程序会给出空指针异常?

jackson - JAX-RS( Jersey ),Bean 验证,@JsonIgnore