使用JSR-308验证List的Hibernate验证属性路径

时间:2016-06-16 13:47:24

标签: java spring jsp spring-mvc hibernate-validator

我有以下代码:

public class ReferEmailForm {
    @Valid
    @NotEmpty
    private Set<@TypedEmail String> emails;

    ...
}

出于某种原因,@TypedEmailBindingResult的错误会被通知为附加到emails[]字段。有没有选项可以覆盖这个名字?我需要这个能够在jsp中使用<form:errors path="emails" />。不幸的是,当前的解决方案不会在表单上生成错误消息。

1 个答案:

答案 0 :(得分:1)

到处寻找答案后,我才注意到我犯了多么愚蠢的错误。 Hibernate将变量名称解析为emails[],因为Set没有基于索引的访问权限。将类型更改为List后,它会返回emails[0],这样会更好。