我想問一下,是否可以在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