in validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/baseval/strategy/JoinValidationStrategy.java [66:103]
private void validateJoinValidation(FacesContext facesContext,
UIComponent uiComponent,
MetaDataEntry metaDataEntry,
Object convertedObject)
{
MetaDataExtractor extractor = DefaultPropertyScanningMetaDataExtractor.getInstance();
String[] targetExpressions = metaDataEntry.getValue(JoinValidation.class).value();
ValidationStrategy validationStrategy;
PropertyDetails propertyDetails;
for (String targetExpression : targetExpressions)
{
propertyDetails = ExtValUtils
.createPropertyDetailsForNewTarget(metaDataEntry, targetExpression);
for (MetaDataEntry entry : extractor.extract(facesContext, propertyDetails).getMetaDataEntries())
{
validationStrategy = ExtValUtils.getValidationStrategyForMetaData(entry.getKey());
if (validationStrategy != null)
{
if(ExtValUtils.processMetaDataEntryAfterSkipValidation(ProxyUtils.getUnproxiedClass(
validationStrategy.getClass(), ValidationStrategy.class), entry))
{
continue;
}
validationStrategy.validate(facesContext, uiComponent, entry, convertedObject);
}
else
{
logger.finest("no validation strategy found for " + entry.getValue());
}
}
}
}