我想问一下,是否可以在Spring中明确设置验证顺序。我的意思是,我有这样的命令对象:Spring Validation Annotations Order
public class UserData {
@NotBlank
private String newPassword;
@NotBlank
private String confirmPassword;
@Email(applyIf="email is not blank")
@NotBlank
private String email;
@NotBlank
private String firstName = "";
private String middleName = "";
@NotBlank
private String lastName = "";
// getters/setters
}
,我显示我的错误消息,在页面的顶部是这样的:
<spring:hasBindErrors name="${userData}">
<ul class="errors">
<c:forEach items="${errors.allErrors}" var="error">
<li><spring:message message="${error}"/></li>
</c:forEach>
</ul>
</spring:hasBindErrors>
问题是,不管是什么我的错误信息会显示在顺序如下:
* Fill you last name. * Fill you password. * Fill your emailaddress. * Fill you password again. * Select your gender. * Fill your first name.
这不是随机的,因为这个顺序被保存每 时间。它不是按字母顺序排列的,或者其他任何顺序......我真的被卡住了。有人可以帮忙吗?
它可能不是Spring对此负责,它可能是底层的验证实现,例如,休眠验证器。 – skaffman 2010-07-19 08:42:03
我们正在使用ver。在java.net上托管的基于Spring注释的bean验证框架的0.93 – 2010-07-19 08:46:18
哪一个是? java.net是一个大的地方... – skaffman 2010-07-19 08:52:21