private List<ValidationMetaData> parseBeanDescriptor(Class<?> clazz,
			Validator validator, BeanDescriptor beanDescriptor,
			String parentFieldName) {
		List<ValidationMetaData> rules = new ArrayList<ValidationMetaData>();
		Set<PropertyDescriptor> constrainedProperties = beanDescriptor
				.getConstrainedProperties();

		for (PropertyDescriptor constrainedProperty : constrainedProperties) {
			List<ValidationMetaData> parsePropertyDescriptor;
			try {
				parsePropertyDescriptor = parsePropertyDescriptor(clazz,
						validator, constrainedProperty, parentFieldName);
				rules.addAll(parsePropertyDescriptor);
			} catch (NoSuchFieldException e) {
				e.printStackTrace();
			}
		}

		return rules;
	}