protected void doCheckMismatchedValidatorAnnotation(Field field, Map<String, Class<?>> genericMap) { // recursive point
pathDeque.push(field.getName());
checkedTypeSet.add(field.getDeclaringClass());
final Class<?> fieldType = deriveFieldType(field, genericMap);
// *depends on JSON rule so difficult, check only physical mismatch here
//if (isFormPropertyCannotNotNullType(fieldType)) {
// final Class<NotNull> notNullType = NotNull.class;
// if (field.getAnnotation(notNullType) != null) {
// throwExecuteMethodFormPropertyValidationMismatchException(property, notNullType);
// }
//}
if (isCannotNotEmptyType(fieldType)) {
final Class<NotEmpty> notEmptyType = NotEmpty.class;
if (field.getAnnotation(notEmptyType) != null) {
throwExecuteMethodNotEmptyValidationMismatchException(field, notEmptyType);
}
}
if (isCannotNotBlankType(fieldType)) {
final Class<NotBlank> notBlankType = NotBlank.class;
if (field.getAnnotation(notBlankType) != null) {
throwExecuteMethodNotEmptyValidationMismatchException(field, notBlankType);
}
}
if (isFormPropertyCannotRequiredPrimitiveType(fieldType)) {
final Class<Required> requiredType = Required.class;
if (field.getAnnotation(requiredType) != null) {
throwExecuteMethodPrimitiveValidationMismatchException(field, requiredType);
}
final Class<NotNull> notNullType = NotNull.class;
if (field.getAnnotation(notNullType) != null) {
throwExecuteMethodPrimitiveValidationMismatchException(field, notNullType);
}
}
if (Collection.class.isAssignableFrom(fieldType)) { // only collection, except array and map, simply
doCheckGenericBeanValidationMismatch(field);
} else if (mayBeNestedBeanType(fieldType)) {
doCheckNestedValidationMismatch(fieldType);
doCheckGenericBeanValidationMismatch(field);
}
pathDeque.pop();
}
ExecuteMethodValidatorChecker.java 文件源码
java
阅读 27
收藏 0
点赞 0
评论 0
项目:lastaflute
作者:
评论列表
文章目录