我使用 OVal 框架来验证我的 java 项目中的业务对象。请参阅验证类:
public class ObjectValidation implements ObjectValidatable {
private IValidator validator;
private Map<String, String> errorMessages;
public ObjectValidation() {
validator = new Validator();
}
public boolean isValid() {
if (validate().size() > 0)
return false;
return true;
}
public List<ConstraintViolation> validate() {
return validator.validate(this);
}
public Map<String, String> getErrorMessages()
{
if(this.isValid()) return null;
errorMessages = new HashMap<String, String>();
for(ConstraintViolation cv : this.validate())
errorMessages.put(cv.???, cv.getMessage());
return errorMessages;
}
}
和
public class Account extends DomainObject {
@NotNull
@NotEmpty
@NotBlank
@Length(max = 5)
private String userName; // How Get This ???
private String password;
private int securityId;
private String securityAnswer;
...
}
我有返回 Map 的 getErrorMessages 我希望它像这样返回userName - 必须不为空
第二部分“必须不为空”可以用 cv.getMessage()
但有验证注释的第一部分是我的问题
如何获取用户 名或其他具有验证注释的字段???