You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2008/08/15 04:17:05 UTC

svn commit: r686111 [5/5] - in /myfaces/extensions/validator/trunk: ./ core/ core/src/main/java/org/apache/myfaces/extensions/validator/ core/src/main/java/org/apache/myfaces/extensions/validator/core/ core/src/main/java/org/apache/myfaces/extensions/v...

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/RequiredIfType.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/RequiredIfType.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/RequiredIfType.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/RequiredIfType.java Thu Aug 14 19:17:02 2008
@@ -21,6 +21,7 @@
 /**
  * @author Gerhard Petracek
  */
-public enum RequiredIfType {
+public enum RequiredIfType
+{
     empty, not_empty
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/TargetAlias.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/TargetAlias.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/TargetAlias.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/TargetAlias.java Thu Aug 14 19:17:02 2008
@@ -27,8 +27,9 @@
 /**
  * @author Gerhard Petracek
  */
-@Target({METHOD, FIELD})
+@Target( { METHOD, FIELD })
 @Retention(RUNTIME)
-public @interface TargetAlias {
+public @interface TargetAlias
+{
     String value() default "";
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/extractor/DefaultValueBindingScanningAnnotationExtractor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/extractor/DefaultValueBindingScanningAnnotationExtractor.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/extractor/DefaultValueBindingScanningAnnotationExtractor.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/annotation/extractor/DefaultValueBindingScanningAnnotationExtractor.java Thu Aug 14 19:17:02 2008
@@ -34,12 +34,17 @@
  *
  * @author Gerhard Petracek
  */
-public class DefaultValueBindingScanningAnnotationExtractor extends DefaultComponentAnnotationExtractor {
+public class DefaultValueBindingScanningAnnotationExtractor extends
+        DefaultComponentAnnotationExtractor
+{
 
     @Override
-    public List<AnnotationEntry> extractAnnotations(FacesContext facesContext, Object object) {
+    public List<AnnotationEntry> extractAnnotations(FacesContext facesContext,
+            Object object)
+    {
         //should never occur
-        if (!(object instanceof String)) {
+        if (!(object instanceof String))
+        {
             return new ArrayList<AnnotationEntry>();
         }
 
@@ -47,40 +52,54 @@
 
         List<AnnotationEntry> annotationEntries = new ArrayList<AnnotationEntry>();
 
-        Class entity = ELUtils.getTypeOfValueBindingForExpression(facesContext, valueBindingExpression);
+        Class entity = ELUtils.getTypeOfValueBindingForExpression(facesContext,
+                valueBindingExpression);
 
-        if (entity != null) {
+        if (entity != null)
+        {
             //find and add annotations
-            addPropertyAccessAnnotations(entity, annotationEntries, valueBindingExpression);
-            addFieldAccessAnnotations(entity, annotationEntries, valueBindingExpression);
+            addPropertyAccessAnnotations(entity, annotationEntries,
+                    valueBindingExpression);
+            addFieldAccessAnnotations(entity, annotationEntries,
+                    valueBindingExpression);
         }
 
         return annotationEntries;
     }
 
-    protected void addPropertyAccessAnnotations(Class entity, List<AnnotationEntry> annotationEntries, String valueBindingExpression) {
+    protected void addPropertyAccessAnnotations(Class entity,
+            List<AnnotationEntry> annotationEntries,
+            String valueBindingExpression)
+    {
         AnnotationEntry templateEntry;
 
-        for (Method method : entity.getDeclaredMethods()) {
+        for (Method method : entity.getDeclaredMethods())
+        {
             templateEntry = new AnnotationEntry();
             templateEntry.setEntityClass(entity.getClass());
             templateEntry.setValueBindingExpression(valueBindingExpression);
             templateEntry.setBoundTo("[method]:" + method.getName());
 
-            addAnnotationToAnnotationEntries(annotationEntries, Arrays.asList(method.getAnnotations()), templateEntry);
+            addAnnotationToAnnotationEntries(annotationEntries, Arrays
+                    .asList(method.getAnnotations()), templateEntry);
         }
     }
 
-    protected void addFieldAccessAnnotations(Class entity, List<AnnotationEntry> annotationEntries, String valueBindingExpression) {
+    protected void addFieldAccessAnnotations(Class entity,
+            List<AnnotationEntry> annotationEntries,
+            String valueBindingExpression)
+    {
         AnnotationEntry templateEntry;
 
-        for (Field field : entity.getDeclaredFields()) {
+        for (Field field : entity.getDeclaredFields())
+        {
             templateEntry = new AnnotationEntry();
             templateEntry.setEntityClass(entity.getClass());
             templateEntry.setValueBindingExpression(valueBindingExpression);
             templateEntry.setBoundTo("[field]:" + field.getName());
 
-            addAnnotationToAnnotationEntries(annotationEntries, Arrays.asList(field.getAnnotations()), templateEntry);
+            addAnnotationToAnnotationEntries(annotationEntries, Arrays
+                    .asList(field.getAnnotations()), templateEntry);
         }
     }
 }

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/message/resolver/DefaultValidationErrorMessageResolver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/message/resolver/DefaultValidationErrorMessageResolver.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/message/resolver/DefaultValidationErrorMessageResolver.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/message/resolver/DefaultValidationErrorMessageResolver.java Thu Aug 14 19:17:02 2008
@@ -21,15 +21,20 @@
 /**
  * @author Gerhard Petracek
  */
-public class DefaultValidationErrorMessageResolver extends org.apache.myfaces.extensions.validator.core.validation.message.resolver.DefaultValidationErrorMessageResolver {
-    private static String BASE_NAME = null;
+public class DefaultValidationErrorMessageResolver
+        extends
+        org.apache.myfaces.extensions.validator.core.validation.message.resolver.DefaultValidationErrorMessageResolver
+{
+    private static String baseName = null;
 
     @Override
-    protected String getBaseName() {
-        if (BASE_NAME == null) {
-            BASE_NAME = super.getBaseName();
+    protected String getBaseName()
+    {
+        if (baseName == null)
+        {
+            baseName = super.getBaseName();
         }
 
-        return BASE_NAME;
+        return baseName;
     }
 }

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/AliasCompareStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/AliasCompareStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/AliasCompareStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/AliasCompareStrategy.java Thu Aug 14 19:17:02 2008
@@ -25,7 +25,8 @@
 import org.apache.myfaces.extensions.validator.crossval.CrossValidationStorage;
 import org.apache.myfaces.extensions.validator.crossval.CrossValidationStorageEntry;
 import org.apache.myfaces.extensions.validator.crossval.annotation.TargetAlias;
-import org.apache.myfaces.extensions.validator.crossval.annotation.extractor.DefaultValueBindingScanningAnnotationExtractor;
+import org.apache.myfaces.extensions.validator.crossval.annotation.extractor.
+    DefaultValueBindingScanningAnnotationExtractor;
 import org.apache.myfaces.extensions.validator.crossval.strategy.AbstractCompareStrategy;
 import org.apache.myfaces.extensions.validator.util.ELUtils;
 
@@ -40,55 +41,91 @@
  *
  * @author Gerhard Petracek
  */
-public class AliasCompareStrategy implements ReferencingStrategy {
+public class AliasCompareStrategy implements ReferencingStrategy
+{
     protected final Log logger = LogFactory.getLog(getClass());
 
-    public boolean evalReferenceAndValidate(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage, String validationTarget, AbstractCompareStrategy compareStrategy) {
-        if (validationTarget.startsWith("@")) {
-            tryToValidateWithAlias(crossValidationStorageEntry, crossValidationStorage, validationTarget.substring(1), compareStrategy);
+    public boolean evalReferenceAndValidate(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage,
+            String validationTarget, AbstractCompareStrategy compareStrategy)
+    {
+        if (validationTarget.startsWith("@"))
+        {
+            tryToValidateWithAlias(crossValidationStorageEntry,
+                    crossValidationStorage, validationTarget.substring(1),
+                    compareStrategy);
             return true;
-        } else if (validationTarget.contains(":@*")) {
-            if (validateBindingFormatWithAlias(validationTarget)) {
-                tryToValidateBindingWithAlias(crossValidationStorageEntry, validationTarget, crossValidationStorage, compareStrategy, false);
+        }
+        else if (validationTarget.contains(":@*"))
+        {
+            if (validateBindingFormatWithAlias(validationTarget))
+            {
+                tryToValidateBindingWithAlias(crossValidationStorageEntry,
+                        validationTarget, crossValidationStorage,
+                        compareStrategy, false);
                 return true;
             }
-        } else if (validationTarget.contains(":@")) {
-            if (validateBindingFormatWithAlias(validationTarget)) {
-                tryToValidateBindingWithAlias(crossValidationStorageEntry, validationTarget, crossValidationStorage, compareStrategy, true);
+        }
+        else if (validationTarget.contains(":@"))
+        {
+            if (validateBindingFormatWithAlias(validationTarget))
+            {
+                tryToValidateBindingWithAlias(crossValidationStorageEntry,
+                        validationTarget, crossValidationStorage,
+                        compareStrategy, true);
                 return true;
             }
         }
         return false;
     }
 
-    protected void tryToValidateWithAlias(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage, String validationTarget, AbstractCompareStrategy compareStrategy) {
+    protected void tryToValidateWithAlias(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage,
+            String validationTarget, AbstractCompareStrategy compareStrategy)
+    {
         boolean validationExecuted = false;
 
         boolean useModelValue = true;
-        if (validationTarget.startsWith("*")) {
+        if (validationTarget.startsWith("*"))
+        {
             useModelValue = false;
             validationTarget = validationTarget.substring(1);
         }
 
         //search for TargetAlias annotations
-        for (CrossValidationStorageEntry entry : crossValidationStorage.getCrossValidationStorageEntries()) {
-
-            if (entry.getAnnotationEntry().getAnnotation() instanceof TargetAlias) {
-                validationExecuted = validateTargetWithAlias(validationTarget, crossValidationStorageEntry, entry, useModelValue, compareStrategy);
+        for (CrossValidationStorageEntry entry : crossValidationStorage
+                .getCrossValidationStorageEntries())
+        {
+
+            if (entry.getAnnotationEntry().getAnnotation() instanceof TargetAlias)
+            {
+                validationExecuted = validateTargetWithAlias(validationTarget,
+                        crossValidationStorageEntry, entry, useModelValue,
+                        compareStrategy);
             }
 
-            if (validationExecuted) {
+            if (validationExecuted)
+            {
                 break;
             }
         }
     }
 
-    protected boolean tryToValidateBindingWithAlias(CrossValidationStorageEntry crossValidationStorageEntry, String targetProperty, CrossValidationStorage crossValidationStorage, AbstractCompareStrategy compareStrategy, boolean useModelValue) {
+    protected boolean tryToValidateBindingWithAlias(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            String targetProperty,
+            CrossValidationStorage crossValidationStorage,
+            AbstractCompareStrategy compareStrategy, boolean useModelValue)
+    {
         String[] crossEntityReferenceWithBinding = extractCrossEntityReferenceWithBinding(targetProperty);
 
         FacesContext facesContext = FacesContext.getCurrentInstance();
 
-        if (!ELUtils.isExpressionValid(facesContext, crossEntityReferenceWithBinding[0])) {
+        if (!ELUtils.isExpressionValid(facesContext,
+                crossEntityReferenceWithBinding[0]))
+        {
             return false;
         }
 
@@ -99,35 +136,59 @@
 
         int aliasStartIndex;
 
-        if (useModelValue) {
+        if (useModelValue)
+        {
             aliasStartIndex = crossEntityReferenceWithBinding[1].indexOf('@') + 1;
-        } else {
+        }
+        else
+        {
             aliasStartIndex = crossEntityReferenceWithBinding[1].indexOf('@') + 2;
         }
-        String targetAliasName = crossEntityReferenceWithBinding[1].substring(aliasStartIndex);
-        for (AnnotationEntry entry : extractor.extractAnnotations(facesContext, crossEntityReferenceWithBinding[0])) {
-            if (entry.getAnnotation() instanceof TargetAlias) {
+        String targetAliasName = crossEntityReferenceWithBinding[1]
+                .substring(aliasStartIndex);
+        for (AnnotationEntry entry : extractor.extractAnnotations(facesContext,
+                crossEntityReferenceWithBinding[0]))
+        {
+            if (entry.getAnnotation() instanceof TargetAlias)
+            {
                 alias = ((TargetAlias) entry.getAnnotation()).value();
-                if (targetAliasName.equals(alias)) {
+                if (targetAliasName.equals(alias))
+                {
                     foundAnnotationEntry = entry;
                     break;
                 }
             }
         }
 
-        if (foundAnnotationEntry == null) {
+        if (foundAnnotationEntry == null)
+        {
             return false;
         }
 
         Object referencedBean = null;
         Object validationTargetObject = null;
-        if (useModelValue) {
-            referencedBean = ELUtils.getValueOfExpression(facesContext, crossEntityReferenceWithBinding[0]);
-            validationTargetObject = getValidationTargetObject(crossValidationStorageEntry, foundAnnotationEntry, referencedBean, crossValidationStorage);
-        } else {
-            for (CrossValidationStorageEntry entry : crossValidationStorage.getCrossValidationStorageEntries()) {
-                if (foundAnnotationEntry.getAnnotation() instanceof TargetAlias && entry.getAnnotationEntry().getAnnotation() != null && entry.getAnnotationEntry().getAnnotation() instanceof TargetAlias) {
-                    if (((TargetAlias) foundAnnotationEntry.getAnnotation()).value().equals(((TargetAlias) entry.getAnnotationEntry().getAnnotation()).value())) {
+        if (useModelValue)
+        {
+            referencedBean = ELUtils.getValueOfExpression(facesContext,
+                    crossEntityReferenceWithBinding[0]);
+            validationTargetObject = getValidationTargetObject(
+                    crossValidationStorageEntry, foundAnnotationEntry,
+                    referencedBean, crossValidationStorage);
+        }
+        else
+        {
+            for (CrossValidationStorageEntry entry : crossValidationStorage
+                    .getCrossValidationStorageEntries())
+            {
+                if (foundAnnotationEntry.getAnnotation() instanceof TargetAlias
+                        && entry.getAnnotationEntry().getAnnotation() != null
+                        && entry.getAnnotationEntry().getAnnotation() instanceof TargetAlias)
+                {
+                    if (((TargetAlias) foundAnnotationEntry.getAnnotation())
+                            .value().equals(
+                                    ((TargetAlias) entry.getAnnotationEntry()
+                                            .getAnnotation()).value()))
+                    {
                         validationTargetObject = entry.getConvertedObject();
                         break;
                     }
@@ -135,13 +196,22 @@
             }
         }
 
-        validateFoundEntry(crossValidationStorageEntry, foundAnnotationEntry, referencedBean, crossValidationStorage, validationTargetObject, compareStrategy);
+        validateFoundEntry(crossValidationStorageEntry, foundAnnotationEntry,
+                referencedBean, crossValidationStorage, validationTargetObject,
+                compareStrategy);
 
         return true;
     }
 
-    protected Object getValidationTargetObject(CrossValidationStorageEntry crossValidationStorageEntry, AnnotationEntry foundAnnotationEntry, Object referencedBean, CrossValidationStorage crossValidationStorage) {
-        if (foundAnnotationEntry == null || foundAnnotationEntry.getBoundTo() == null || foundAnnotationEntry.getBoundTo().indexOf(":") < 0) {
+    protected Object getValidationTargetObject(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            AnnotationEntry foundAnnotationEntry, Object referencedBean,
+            CrossValidationStorage crossValidationStorage)
+    {
+        if (foundAnnotationEntry == null
+                || foundAnnotationEntry.getBoundTo() == null
+                || foundAnnotationEntry.getBoundTo().indexOf(":") < 0)
+        {
             //TODO logging
             return null;
         }
@@ -149,89 +219,143 @@
         Object validationTargetObject = null;
         String boundTo = foundAnnotationEntry.getBoundTo();
         String name = boundTo.substring(boundTo.indexOf(":") + 1);
-        if (boundTo.startsWith("[method]")) {
-            String baseValueBindingExpression = foundAnnotationEntry.getValueBindingExpression();
-
-            String targetValueBindingExpression = baseValueBindingExpression.substring(0, baseValueBindingExpression.length() - 1) + "." + name + "}";
+        if (boundTo.startsWith("[method]"))
+        {
+            String baseValueBindingExpression = foundAnnotationEntry
+                    .getValueBindingExpression();
+
+            String targetValueBindingExpression = baseValueBindingExpression
+                    .substring(0, baseValueBindingExpression.length() - 1)
+                    + "." + name + "}";
             FacesContext facesContext = FacesContext.getCurrentInstance();
 
-            if (ELUtils.isExpressionValid(facesContext, targetValueBindingExpression)) {
-                validationTargetObject = ELUtils.getValueOfExpression(facesContext, targetValueBindingExpression);
+            if (ELUtils.isExpressionValid(facesContext,
+                    targetValueBindingExpression))
+            {
+                validationTargetObject = ELUtils.getValueOfExpression(
+                        facesContext, targetValueBindingExpression);
             }
-        } else if (boundTo.startsWith("[field]")) {
-            try {
+        }
+        else if (boundTo.startsWith("[field]"))
+        {
+            try
+            {
                 Field foundField;
-                try {
-                    foundField = referencedBean.getClass().getDeclaredField(name);
+                try
+                {
+                    foundField = referencedBean.getClass().getDeclaredField(
+                            name);
                     foundField.setAccessible(true);
                     validationTargetObject = foundField.get(referencedBean);
-                } catch (NoSuchFieldException e) {
-                    foundField = referencedBean.getClass().getDeclaredField("_" + name);
+                }
+                catch (NoSuchFieldException e)
+                {
+                    foundField = referencedBean.getClass().getDeclaredField(
+                            "_" + name);
                     foundField.setAccessible(true);
                     validationTargetObject = foundField.get(referencedBean);
                 }
-            } catch (Exception e) {
-                logger.warn("couldn't access field " + name + " details: boundTo=" + boundTo, e);
+            }
+            catch (Exception e)
+            {
+                logger.warn("couldn't access field " + name
+                        + " details: boundTo=" + boundTo, e);
             }
         }
 
         return validationTargetObject;
     }
 
-    protected void validateFoundEntry(CrossValidationStorageEntry crossValidationStorageEntry, AnnotationEntry foundAnnotationEntry, Object referencedBean, CrossValidationStorage crossValidationStorage, Object validationTargetObject, AbstractCompareStrategy compareStrategy) {
+    protected void validateFoundEntry(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            AnnotationEntry foundAnnotationEntry, Object referencedBean,
+            CrossValidationStorage crossValidationStorage,
+            Object validationTargetObject,
+            AbstractCompareStrategy compareStrategy)
+    {
         boolean violationFound = false;
 
-        if (compareStrategy.isViolation(crossValidationStorageEntry.getConvertedObject(), validationTargetObject, crossValidationStorageEntry.getAnnotationEntry().getAnnotation())) {
+        if (compareStrategy.isViolation(crossValidationStorageEntry
+                .getConvertedObject(), validationTargetObject,
+                crossValidationStorageEntry.getAnnotationEntry()
+                        .getAnnotation()))
+        {
             //TODO use compareStrategy#useTargetComponentToDisplayErrorMsg
-            compareStrategy.processTargetComponentAfterViolation(crossValidationStorageEntry, null);
+            compareStrategy.processTargetComponentAfterViolation(
+                    crossValidationStorageEntry, null);
 
             violationFound = true;
         }
 
-        if (violationFound) {
-            compareStrategy.processSourceComponentAfterViolation(crossValidationStorageEntry);
+        if (violationFound)
+        {
+            compareStrategy
+                    .processSourceComponentAfterViolation(crossValidationStorageEntry);
         }
     }
 
     //TODO
-    protected boolean validateTargetWithAlias(String validationTarget, CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorageEntry entry, boolean useModelValue, AbstractCompareStrategy compareStrategy) {
+    protected boolean validateTargetWithAlias(String validationTarget,
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorageEntry entry, boolean useModelValue,
+            AbstractCompareStrategy compareStrategy)
+    {
         boolean validationExecuted = false;
         boolean violationFound = false;
 
-        if (validationTarget.equals(((TargetAlias) entry.getAnnotationEntry().getAnnotation()).value())) {
+        if (validationTarget.equals(((TargetAlias) entry.getAnnotationEntry()
+                .getAnnotation()).value()))
+        {
             //get an object to store all results
 
             Object validationTargetObject;
 
-            if (useModelValue) {
-                validationTargetObject = ELUtils.getValueOfExpression(FacesContext.getCurrentInstance(), entry.getAnnotationEntry().getValueBindingExpression());
-            } else {
+            if (useModelValue)
+            {
+                validationTargetObject = ELUtils.getValueOfExpression(
+                        FacesContext.getCurrentInstance(), entry
+                                .getAnnotationEntry()
+                                .getValueBindingExpression());
+            }
+            else
+            {
                 validationTargetObject = entry.getConvertedObject();
             }
-            if (compareStrategy.isViolation(crossValidationStorageEntry.getConvertedObject(), validationTargetObject, crossValidationStorageEntry.getAnnotationEntry().getAnnotation())) {
+            if (compareStrategy.isViolation(crossValidationStorageEntry
+                    .getConvertedObject(), validationTargetObject,
+                    crossValidationStorageEntry.getAnnotationEntry()
+                            .getAnnotation()))
+            {
                 violationFound = true;
 
-                compareStrategy.processTargetComponentAfterViolation(crossValidationStorageEntry, entry);
+                compareStrategy.processTargetComponentAfterViolation(
+                        crossValidationStorageEntry, entry);
             }
             validationExecuted = true;
         }
 
-        if (violationFound) {
-            compareStrategy.processSourceComponentAfterViolation(crossValidationStorageEntry);
+        if (violationFound)
+        {
+            compareStrategy
+                    .processSourceComponentAfterViolation(crossValidationStorageEntry);
         }
 
         return validationExecuted;
     }
 
-    protected boolean validateBindingFormatWithAlias(String targetProperty) {
+    protected boolean validateBindingFormatWithAlias(String targetProperty)
+    {
         int bindingStartIndex = targetProperty.indexOf("#{");
         int bindingEndIndex = targetProperty.indexOf("}");
         int separatorIndex = targetProperty.indexOf(":@");
 
-        return (bindingStartIndex > -1 && bindingEndIndex > -1 && separatorIndex > -1 && bindingStartIndex < bindingEndIndex && bindingEndIndex < separatorIndex);
+        return (bindingStartIndex > -1 && bindingEndIndex > -1
+                && separatorIndex > -1 && bindingStartIndex < bindingEndIndex && bindingEndIndex < separatorIndex);
     }
 
-    protected String[] extractCrossEntityReferenceWithBinding(String targetProperty) {
+    protected String[] extractCrossEntityReferenceWithBinding(
+            String targetProperty)
+    {
         String[] result = new String[2];
 
         result[0] = targetProperty.substring(0, targetProperty.indexOf(":"));

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ELCompareStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ELCompareStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ELCompareStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ELCompareStrategy.java Thu Aug 14 19:17:02 2008
@@ -36,64 +36,102 @@
  *
  * @author Gerhard Petracek
  */
-public class ELCompareStrategy implements ReferencingStrategy {
+public class ELCompareStrategy implements ReferencingStrategy
+{
     protected final Log logger = LogFactory.getLog(getClass());
 
-    public boolean evalReferenceAndValidate(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage, String validationTarget, AbstractCompareStrategy compareStrategy) {
-        if (validationTarget.startsWith("#{") && validationTarget.endsWith("}") && validateValueBindingFormat(validationTarget)) {
-            tryToValidateValueBinding(crossValidationStorageEntry, validationTarget, crossValidationStorage, compareStrategy);
+    public boolean evalReferenceAndValidate(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage,
+            String validationTarget, AbstractCompareStrategy compareStrategy)
+    {
+        if (validationTarget.startsWith("#{") && validationTarget.endsWith("}")
+                && validateValueBindingFormat(validationTarget))
+        {
+            tryToValidateValueBinding(crossValidationStorageEntry,
+                    validationTarget, crossValidationStorage, compareStrategy);
             return true;
         }
         return false;
     }
 
-    protected boolean tryToValidateValueBinding(CrossValidationStorageEntry crossValidationStorageEntry, String validationTarget, CrossValidationStorage crossValidationStorage, AbstractCompareStrategy compareStrategy) {
+    protected boolean tryToValidateValueBinding(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            String validationTarget,
+            CrossValidationStorage crossValidationStorage,
+            AbstractCompareStrategy compareStrategy)
+    {
         boolean violationFound = false;
 
         FacesContext facesContext = FacesContext.getCurrentInstance();
 
-        if (!ELUtils.isExpressionValid(facesContext, validationTarget)) {
+        if (!ELUtils.isExpressionValid(facesContext, validationTarget))
+        {
             return false;
         }
 
-        if (compareStrategy.isViolation(crossValidationStorageEntry.getConvertedObject(), ELUtils.getValueOfExpression(facesContext, validationTarget), crossValidationStorageEntry.getAnnotationEntry().getAnnotation())) {
+        if (compareStrategy.isViolation(crossValidationStorageEntry
+                .getConvertedObject(), ELUtils.getValueOfExpression(
+                facesContext, validationTarget), crossValidationStorageEntry
+                .getAnnotationEntry().getAnnotation()))
+        {
 
             ProcessedInformationEntry validationTargetEntry;
-            Map<String, ProcessedInformationEntry> valueBindingConvertedValueMapping = ExtValUtils.getOrInitValueBindingConvertedValueMapping();
+            Map<String, ProcessedInformationEntry> valueBindingConvertedValueMapping = ExtValUtils
+                    .getOrInitValueBindingConvertedValueMapping();
 
-            validationTargetEntry = valueBindingConvertedValueMapping.get(validationTarget);
+            validationTargetEntry = valueBindingConvertedValueMapping
+                    .get(validationTarget);
 
             CrossValidationStorageEntry tmpCrossValidationStorageEntry = null;
 
-            if (validationTargetEntry != null) {
+            if (validationTargetEntry != null)
+            {
                 tmpCrossValidationStorageEntry = new CrossValidationStorageEntry();
                 //TODO test
-                if (compareStrategy.useTargetComponentToDisplayErrorMsg(crossValidationStorageEntry)) {
-                    tmpCrossValidationStorageEntry.setComponent(validationTargetEntry.getComponent());
-                } else {
-                    tmpCrossValidationStorageEntry.setComponent(crossValidationStorageEntry.getComponent());
+                if (compareStrategy
+                        .useTargetComponentToDisplayErrorMsg(crossValidationStorageEntry))
+                {
+                    tmpCrossValidationStorageEntry
+                            .setComponent(validationTargetEntry.getComponent());
                 }
-                tmpCrossValidationStorageEntry.setConvertedObject(validationTargetEntry.getConvertedValue());
-                tmpCrossValidationStorageEntry.setValidationStrategy(compareStrategy);
+                else
+                {
+                    tmpCrossValidationStorageEntry
+                            .setComponent(crossValidationStorageEntry
+                                    .getComponent());
+                }
+                tmpCrossValidationStorageEntry
+                        .setConvertedObject(validationTargetEntry
+                                .getConvertedValue());
+                tmpCrossValidationStorageEntry
+                        .setValidationStrategy(compareStrategy);
             }
 
-            compareStrategy.processTargetComponentAfterViolation(crossValidationStorageEntry, tmpCrossValidationStorageEntry);
+            compareStrategy
+                    .processTargetComponentAfterViolation(
+                            crossValidationStorageEntry,
+                            tmpCrossValidationStorageEntry);
 
             violationFound = true;
         }
 
-        if (violationFound) {
-            compareStrategy.processSourceComponentAfterViolation(crossValidationStorageEntry);
+        if (violationFound)
+        {
+            compareStrategy
+                    .processSourceComponentAfterViolation(crossValidationStorageEntry);
         }
 
         return true;
     }
 
-    protected boolean validateValueBindingFormat(String targetProperty) {
+    protected boolean validateValueBindingFormat(String targetProperty)
+    {
         int bindingStartIndex = targetProperty.indexOf("#{");
         int bindingEndIndex = targetProperty.indexOf("}");
         int separatorIndex = targetProperty.indexOf(".");
 
-        return (bindingStartIndex > -1 && bindingEndIndex > -1 && separatorIndex > -1 && bindingStartIndex < bindingEndIndex && bindingEndIndex > separatorIndex);
+        return (bindingStartIndex > -1 && bindingEndIndex > -1
+                && separatorIndex > -1 && bindingStartIndex < bindingEndIndex && bindingEndIndex > separatorIndex);
     }
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/LocalCompareStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/LocalCompareStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/LocalCompareStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/LocalCompareStrategy.java Thu Aug 14 19:17:02 2008
@@ -35,63 +35,104 @@
  *
  * @author Gerhard Petracek
  */
-public class LocalCompareStrategy implements ReferencingStrategy {
+public class LocalCompareStrategy implements ReferencingStrategy
+{
     protected final Log logger = LogFactory.getLog(getClass());
 
-    public boolean evalReferenceAndValidate(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage, String validationTarget, AbstractCompareStrategy compareStrategy) {
-        tryToValidateLocally(crossValidationStorageEntry, validationTarget, compareStrategy);
+    public boolean evalReferenceAndValidate(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage,
+            String validationTarget, AbstractCompareStrategy compareStrategy)
+    {
+        tryToValidateLocally(crossValidationStorageEntry, validationTarget,
+                compareStrategy);
 
         //TODO
         return true;
     }
 
-    protected void tryToValidateLocally(CrossValidationStorageEntry crossValidationStorageEntry, String validationTarget, AbstractCompareStrategy compareStrategy) {
+    protected void tryToValidateLocally(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            String validationTarget, AbstractCompareStrategy compareStrategy)
+    {
         boolean violationFound = false;
 
-        String baseValueBindingExpression = crossValidationStorageEntry.getAnnotationEntry().getValueBindingExpression();
-        baseValueBindingExpression = baseValueBindingExpression.substring(0, baseValueBindingExpression.lastIndexOf("."));
+        String baseValueBindingExpression = crossValidationStorageEntry
+                .getAnnotationEntry().getValueBindingExpression();
+        baseValueBindingExpression = baseValueBindingExpression.substring(0,
+                baseValueBindingExpression.lastIndexOf("."));
 
         String targetValueBindingExpression;
 
         FacesContext facesContext = FacesContext.getCurrentInstance();
 
-        Map<String, ProcessedInformationEntry> valueBindingConvertedValueMapping = ExtValUtils.getOrInitValueBindingConvertedValueMapping();
+        Map<String, ProcessedInformationEntry> valueBindingConvertedValueMapping = ExtValUtils
+                .getOrInitValueBindingConvertedValueMapping();
         ProcessedInformationEntry validationTargetEntry;
 
-        targetValueBindingExpression = baseValueBindingExpression + "." + validationTarget + "}";
+        targetValueBindingExpression = baseValueBindingExpression + "."
+                + validationTarget + "}";
 
-        if (!ELUtils.isExpressionValid(facesContext, targetValueBindingExpression)) {
+        if (!ELUtils.isExpressionValid(facesContext,
+                targetValueBindingExpression))
+        {
             return;
         }
 
-        if (!valueBindingConvertedValueMapping.containsKey(targetValueBindingExpression)) {
+        if (!valueBindingConvertedValueMapping
+                .containsKey(targetValueBindingExpression))
+        {
             return;
         }
-        validationTargetEntry = compareStrategy.resolveValidationTargetEntry(valueBindingConvertedValueMapping, targetValueBindingExpression, crossValidationStorageEntry.getBean());
-
-        if (validationTargetEntry == null) {
-            logger.warn("couldn't find converted object for " + targetValueBindingExpression);
+        validationTargetEntry = compareStrategy.resolveValidationTargetEntry(
+                valueBindingConvertedValueMapping,
+                targetValueBindingExpression, crossValidationStorageEntry
+                        .getBean());
+
+        if (validationTargetEntry == null)
+        {
+            logger.warn("couldn't find converted object for "
+                    + targetValueBindingExpression);
             return;
         }
 
-        if (compareStrategy.isViolation(crossValidationStorageEntry.getConvertedObject(), validationTargetEntry.getConvertedValue(), crossValidationStorageEntry.getAnnotationEntry().getAnnotation())) {
+        if (compareStrategy.isViolation(crossValidationStorageEntry
+                .getConvertedObject(), validationTargetEntry
+                .getConvertedValue(), crossValidationStorageEntry
+                .getAnnotationEntry().getAnnotation()))
+        {
 
             CrossValidationStorageEntry tmpCrossValidationStorageEntry = new CrossValidationStorageEntry();
-            if (compareStrategy.useTargetComponentToDisplayErrorMsg(crossValidationStorageEntry)) {
-                tmpCrossValidationStorageEntry.setComponent(validationTargetEntry.getComponent());
-            } else {
-                tmpCrossValidationStorageEntry.setComponent(crossValidationStorageEntry.getComponent());
+            if (compareStrategy
+                    .useTargetComponentToDisplayErrorMsg(crossValidationStorageEntry))
+            {
+                tmpCrossValidationStorageEntry
+                        .setComponent(validationTargetEntry.getComponent());
             }
-            tmpCrossValidationStorageEntry.setConvertedObject(validationTargetEntry.getConvertedValue());
-            tmpCrossValidationStorageEntry.setValidationStrategy(compareStrategy);
-
-            compareStrategy.processTargetComponentAfterViolation(crossValidationStorageEntry, tmpCrossValidationStorageEntry);
+            else
+            {
+                tmpCrossValidationStorageEntry
+                        .setComponent(crossValidationStorageEntry
+                                .getComponent());
+            }
+            tmpCrossValidationStorageEntry
+                    .setConvertedObject(validationTargetEntry
+                            .getConvertedValue());
+            tmpCrossValidationStorageEntry
+                    .setValidationStrategy(compareStrategy);
+
+            compareStrategy
+                    .processTargetComponentAfterViolation(
+                            crossValidationStorageEntry,
+                            tmpCrossValidationStorageEntry);
 
             violationFound = true;
         }
 
-        if (violationFound) {
-            compareStrategy.processSourceComponentAfterViolation(crossValidationStorageEntry);
+        if (violationFound)
+        {
+            compareStrategy
+                    .processSourceComponentAfterViolation(crossValidationStorageEntry);
         }
     }
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ReferencingStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ReferencingStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ReferencingStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/referencing/strategy/ReferencingStrategy.java Thu Aug 14 19:17:02 2008
@@ -25,6 +25,11 @@
 /**
  * @author Gerhard Petracek
  */
-public interface ReferencingStrategy {
-    boolean evalReferenceAndValidate(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage, String validationTarget, AbstractCompareStrategy abstractCompareStrategy);
+public interface ReferencingStrategy
+{
+    boolean evalReferenceAndValidate(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage,
+            String validationTarget,
+            AbstractCompareStrategy abstractCompareStrategy);
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCompareStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCompareStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCompareStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCompareStrategy.java Thu Aug 14 19:17:02 2008
@@ -18,6 +18,17 @@
  */
 package org.apache.myfaces.extensions.validator.crossval.strategy;
 
+import java.lang.annotation.Annotation;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.MissingResourceException;
+
+import javax.faces.application.FacesMessage;
+import javax.faces.context.FacesContext;
+import javax.faces.validator.ValidatorException;
+
 import org.apache.myfaces.extensions.validator.core.ProcessedInformationEntry;
 import org.apache.myfaces.extensions.validator.crossval.CrossValidationStorage;
 import org.apache.myfaces.extensions.validator.crossval.CrossValidationStorageEntry;
@@ -28,31 +39,34 @@
 import org.apache.myfaces.extensions.validator.util.ClassUtils;
 import org.apache.myfaces.extensions.validator.util.ExtValUtils;
 
-import javax.faces.application.FacesMessage;
-import javax.faces.context.FacesContext;
-import javax.faces.validator.ValidatorException;
-import java.lang.annotation.Annotation;
-import java.util.*;
-
 /**
  * @author Gerhard Petracek
  */
-public abstract class AbstractCompareStrategy extends AbstractCrossValidationStrategy {
+public abstract class AbstractCompareStrategy extends
+        AbstractCrossValidationStrategy
+{
     protected static List<ReferencingStrategy> referencingStrategies;
     protected Map<Object, Object> violationResultStorage = new HashMap<Object, Object>();
 
-    public AbstractCompareStrategy() {
+    public AbstractCompareStrategy()
+    {
         initReferencingStrategies();
     }
 
-    protected void initReferencingStrategies() {
-        if (referencingStrategies == null) {
+    protected void initReferencingStrategies()
+    {
+        if (referencingStrategies == null)
+        {
             referencingStrategies = new ArrayList<ReferencingStrategy>();
 
-            String customReferencingStrategyClassName = ExtValUtils.getBasePackage() + "ReferencingStrategy";
-            ReferencingStrategy customReferencingStrategy = (ReferencingStrategy) ClassUtils.tryToInstantiateClassForName(customReferencingStrategyClassName);
+            String customReferencingStrategyClassName = ExtValUtils
+                    .getBasePackage()
+                    + "ReferencingStrategy";
+            ReferencingStrategy customReferencingStrategy = (ReferencingStrategy) ClassUtils
+                    .tryToInstantiateClassForName(customReferencingStrategyClassName);
 
-            if (customReferencingStrategy != null) {
+            if (customReferencingStrategy != null)
+            {
                 referencingStrategies.add(customReferencingStrategy);
             }
 
@@ -62,22 +76,37 @@
         }
     }
 
-    public void processCrossValidation(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage) throws ValidatorException {
+    public void processCrossValidation(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage)
+            throws ValidatorException
+    {
 
         initValidation(crossValidationStorageEntry);
-        String[] validationTargets = getValidationTargets(crossValidationStorageEntry.getAnnotationEntry().getAnnotation());
+        String[] validationTargets = getValidationTargets(crossValidationStorageEntry
+                .getAnnotationEntry().getAnnotation());
 
-        for (String validationTarget : validationTargets) {
+        for (String validationTarget : validationTargets)
+        {
             validationTarget = validationTarget.trim();
 
             //select validation method
-            tryToValidate(crossValidationStorageEntry, crossValidationStorage, validationTarget);
+            tryToValidate(crossValidationStorageEntry, crossValidationStorage,
+                    validationTarget);
         }
     }
 
-    private boolean tryToValidate(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage, String validationTarget) {
-        for (ReferencingStrategy referencingStrategy : referencingStrategies) {
-            if (referencingStrategy.evalReferenceAndValidate(crossValidationStorageEntry, crossValidationStorage, validationTarget, this)) {
+    private boolean tryToValidate(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage,
+            String validationTarget)
+    {
+        for (ReferencingStrategy referencingStrategy : referencingStrategies)
+        {
+            if (referencingStrategy.evalReferenceAndValidate(
+                    crossValidationStorageEntry, crossValidationStorage,
+                    validationTarget, this))
+            {
                 return true;
             }
         }
@@ -87,58 +116,84 @@
 
     //TODO
     //has to be public for custom referencing strategies!!!
-    public final void processTargetComponentAfterViolation(CrossValidationStorageEntry entryOfSource, CrossValidationStorageEntry entryOfTarget) {
-        if(!handleTargetViolation(entryOfSource, entryOfTarget)) {
+    public final void processTargetComponentAfterViolation(
+            CrossValidationStorageEntry entryOfSource,
+            CrossValidationStorageEntry entryOfTarget)
+    {
+        if (!handleTargetViolation(entryOfSource, entryOfTarget))
+        {
             return;
         }
 
         FacesContext facesContext = FacesContext.getCurrentInstance();
 
         //get validation error messages for the target component
-        String summary = getErrorMessageSummary(entryOfSource.getAnnotationEntry().getAnnotation(), true);
-        String details = getErrorMessageDetails(entryOfSource.getAnnotationEntry().getAnnotation(), true);
-
-        //validation target isn't bound to a component withing the current page (see validateFoundEntry, tryToValidateLocally and tryToValidateBindingOnly)
-        if (entryOfTarget == null) {
+        String summary = getErrorMessageSummary(entryOfSource
+                .getAnnotationEntry().getAnnotation(), true);
+        String details = getErrorMessageDetails(entryOfSource
+                .getAnnotationEntry().getAnnotation(), true);
+
+        //validation target isn't bound to a component withing the current page 
+        //(see validateFoundEntry, tryToValidateLocally and tryToValidateBindingOnly)
+        if (entryOfTarget == null)
+        {
             entryOfTarget = entryOfSource;
         }
 
         FacesMessage message;
-        if (entryOfTarget.getAnnotationEntry() != null) {
-            message = getTargetComponentErrorMessage(entryOfTarget.getAnnotationEntry().getAnnotation(), summary, details);
-        } else {
+        if (entryOfTarget.getAnnotationEntry() != null)
+        {
+            message = getTargetComponentErrorMessage(entryOfTarget
+                    .getAnnotationEntry().getAnnotation(), summary, details);
+        }
+        else
+        {
             //TODO document possible side effects
             //due to a missing target annotation (see: tryToValidateLocally)
-            message = getTargetComponentErrorMessage(entryOfSource.getAnnotationEntry().getAnnotation(), summary, details);
+            message = getTargetComponentErrorMessage(entryOfSource
+                    .getAnnotationEntry().getAnnotation(), summary, details);
         }
 
-        if (message.getSummary() != null || message.getDetail() != null) {
-            facesContext.addMessage(entryOfTarget.getComponent().getClientId(facesContext), message);
+        if (message.getSummary() != null || message.getDetail() != null)
+        {
+            facesContext.addMessage(entryOfTarget.getComponent().getClientId(
+                    facesContext), message);
         }
     }
 
     //has to be public for custom referencing strategies!!!
-    public final void processSourceComponentAfterViolation(CrossValidationStorageEntry entryOfSource) {
-        if(!handleSourceViolation(entryOfSource)) {
+    public final void processSourceComponentAfterViolation(
+            CrossValidationStorageEntry entryOfSource)
+    {
+        if (!handleSourceViolation(entryOfSource))
+        {
             return;
         }
 
         //get validation error messages for the current component
-        String summary = getErrorMessageSummary(entryOfSource.getAnnotationEntry().getAnnotation(), false);
-        String details = getErrorMessageDetails(entryOfSource.getAnnotationEntry().getAnnotation(), false);
+        String summary = getErrorMessageSummary(entryOfSource
+                .getAnnotationEntry().getAnnotation(), false);
+        String details = getErrorMessageDetails(entryOfSource
+                .getAnnotationEntry().getAnnotation(), false);
 
-        FacesMessage message = getSourceComponentErrorMessage(entryOfSource.getAnnotationEntry().getAnnotation(), summary, details);
+        FacesMessage message = getSourceComponentErrorMessage(entryOfSource
+                .getAnnotationEntry().getAnnotation(), summary, details);
 
-        if (message.getSummary() != null || message.getDetail() != null) {
+        if (message.getSummary() != null || message.getDetail() != null)
+        {
             //TODO
             throw new ValidatorException(message);
-        } else {
+        }
+        else
+        {
             throw new ValidatorException(new FacesMessage());
         }
     }
 
     //has to be public for custom referencing strategies!!!
-    public FacesMessage getSourceComponentErrorMessage(Annotation annotation, String summary, String details) {
+    public FacesMessage getSourceComponentErrorMessage(Annotation annotation,
+            String summary, String details)
+    {
         FacesMessage message = new FacesMessage();
 
         message.setSeverity(FacesMessage.SEVERITY_ERROR);
@@ -149,7 +204,9 @@
     }
 
     //has to be public for custom referencing strategies!!!
-    public FacesMessage getTargetComponentErrorMessage(Annotation foundAnnotation, String summary, String details) {
+    public FacesMessage getTargetComponentErrorMessage(
+            Annotation foundAnnotation, String summary, String details)
+    {
         FacesMessage message = new FacesMessage();
 
         message.setSeverity(FacesMessage.SEVERITY_ERROR);
@@ -160,22 +217,31 @@
     }
 
     //has to be public for custom referencing strategies!!!
-    public ProcessedInformationEntry resolveValidationTargetEntry(Map<String, ProcessedInformationEntry> valueBindingConvertedValueMapping, String targetValueBinding, Object bean) {
-        ProcessedInformationEntry processedInformationEntry = valueBindingConvertedValueMapping.get(targetValueBinding);
+    public ProcessedInformationEntry resolveValidationTargetEntry(
+            Map<String, ProcessedInformationEntry> valueBindingConvertedValueMapping,
+            String targetValueBinding, Object bean)
+    {
+        ProcessedInformationEntry processedInformationEntry = valueBindingConvertedValueMapping
+                .get(targetValueBinding);
 
         //simple case
-        if (processedInformationEntry.getFurtherEntries() == null) {
+        if (processedInformationEntry.getFurtherEntries() == null)
+        {
             return processedInformationEntry;
         }
 
         //process complex component entries (e.g. a table)
         //supported: cross-component but no cross-entity validation (= locale validation)
-        if (processedInformationEntry.getBean().equals(bean)) {
+        if (processedInformationEntry.getBean().equals(bean))
+        {
             return processedInformationEntry;
         }
 
-        for (ProcessedInformationEntry entry : processedInformationEntry.getFurtherEntries()) {
-            if (entry.getBean().equals(bean)) {
+        for (ProcessedInformationEntry entry : processedInformationEntry
+                .getFurtherEntries())
+        {
+            if (entry.getBean().equals(bean))
+            {
                 return entry;
             }
         }
@@ -183,21 +249,33 @@
         return null;
     }
 
-    protected String getErrorMessageSummary(Annotation annotation, boolean isTargetComponent) {
-        return resolveMessage(getValidationErrorMsgKey(annotation, isTargetComponent));
+    protected String getErrorMessageSummary(Annotation annotation,
+            boolean isTargetComponent)
+    {
+        return resolveMessage(getValidationErrorMsgKey(annotation,
+                isTargetComponent));
     }
 
-    protected String getErrorMessageDetails(Annotation annotation, boolean isTargetComponent) {
-        try {
+    protected String getErrorMessageDetails(Annotation annotation,
+            boolean isTargetComponent)
+    {
+        try
+        {
             String key = getValidationErrorMsgKey(annotation, isTargetComponent);
-            return (key != null) ? resolveMessage(key + DETAIL_MESSAGE_KEY_POSTFIX) : null;
-        } catch (MissingResourceException e) {
-            logger.warn("couldn't find key " + getValidationErrorMsgKey(annotation, isTargetComponent) + DETAIL_MESSAGE_KEY_POSTFIX, e);
+            return (key != null) ? resolveMessage(key
+                    + DETAIL_MESSAGE_KEY_POSTFIX) : null;
+        }
+        catch (MissingResourceException e)
+        {
+            logger.warn("couldn't find key "
+                    + getValidationErrorMsgKey(annotation, isTargetComponent)
+                    + DETAIL_MESSAGE_KEY_POSTFIX, e);
         }
         return null;
     }
 
-    protected String getValidationErrorMsgKey(Annotation annotation) {
+    protected String getValidationErrorMsgKey(Annotation annotation)
+    {
         return getValidationErrorMsgKey(annotation, false);
     }
 
@@ -208,18 +286,27 @@
      * the usage of this method requires a new instance
      * -> in case of validation strategy beans application/singleton isn't allowed
      */
-    protected void initValidation(CrossValidationStorageEntry crossValidationStorageEntry) {
+    protected void initValidation(
+            CrossValidationStorageEntry crossValidationStorageEntry)
+    {
     }
 
-    protected boolean handleTargetViolation(CrossValidationStorageEntry entryOfSource, CrossValidationStorageEntry entryOfTarget) {
+    protected boolean handleTargetViolation(
+            CrossValidationStorageEntry entryOfSource,
+            CrossValidationStorageEntry entryOfTarget)
+    {
         return true;
     }
 
-    protected boolean handleSourceViolation(CrossValidationStorageEntry entryOfSource) {
+    protected boolean handleSourceViolation(
+            CrossValidationStorageEntry entryOfSource)
+    {
         return true;
     }
 
-    public boolean useTargetComponentToDisplayErrorMsg(CrossValidationStorageEntry crossValidationStorageEntry) {
+    public boolean useTargetComponentToDisplayErrorMsg(
+            CrossValidationStorageEntry crossValidationStorageEntry)
+    {
         return handleTargetViolation(crossValidationStorageEntry, null);
     }
 
@@ -227,13 +314,15 @@
      * abstract methods
      */
 
-    protected abstract String getValidationErrorMsgKey(Annotation annotation, boolean isTargetComponent);
+    protected abstract String getValidationErrorMsgKey(Annotation annotation,
+            boolean isTargetComponent);
 
     /*
      * implements the specific validation logic
      */
 
-    public abstract boolean isViolation(Object object1, Object object2, Annotation annotation);
+    public abstract boolean isViolation(Object object1, Object object2,
+            Annotation annotation);
 
     /*
      * returns the referenced validation targets of the annotation
@@ -241,4 +330,4 @@
      * -> method returns an array with one value ("finalExam")
      */
     public abstract String[] getValidationTargets(Annotation annotation);
-}
\ No newline at end of file
+}

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCrossValidationStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCrossValidationStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCrossValidationStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/AbstractCrossValidationStrategy.java Thu Aug 14 19:17:02 2008
@@ -31,16 +31,25 @@
 /**
  * @author Gerhard Petracek
  */
-public abstract class AbstractCrossValidationStrategy extends AbstractValidationStrategy implements CrossValidationStrategy {
+public abstract class AbstractCrossValidationStrategy extends
+        AbstractValidationStrategy implements CrossValidationStrategy
+{
 
     //init cross-validation
-    public void processValidation(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject) throws ValidatorException {
-        CrossValidationStorageEntry entry = getCrossValidationStorageEntry(facesContext, uiComponent, annotationEntry, convertedObject);
+    public void processValidation(FacesContext facesContext,
+            UIComponent uiComponent, AnnotationEntry annotationEntry,
+            Object convertedObject) throws ValidatorException
+    {
+        CrossValidationStorageEntry entry = getCrossValidationStorageEntry(
+                facesContext, uiComponent, annotationEntry, convertedObject);
 
         CrossValidationUtils.getOrInitCrossValidationStorage().add(entry);
     }
 
-    public CrossValidationStorageEntry getCrossValidationStorageEntry(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject) {
+    public CrossValidationStorageEntry getCrossValidationStorageEntry(
+            FacesContext facesContext, UIComponent uiComponent,
+            AnnotationEntry annotationEntry, Object convertedObject)
+    {
         CrossValidationStorageEntry entry = new CrossValidationStorageEntry();
 
         entry.setAnnotationEntry(annotationEntry);

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/CrossValidationStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/CrossValidationStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/CrossValidationStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/CrossValidationStrategy.java Thu Aug 14 19:17:02 2008
@@ -30,8 +30,14 @@
 /**
  * @author Gerhard Petracek
  */
-public interface CrossValidationStrategy extends ValidationStrategy {
-    CrossValidationStorageEntry getCrossValidationStorageEntry(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject);
+public interface CrossValidationStrategy extends ValidationStrategy
+{
+    CrossValidationStorageEntry getCrossValidationStorageEntry(
+            FacesContext facesContext, UIComponent uiComponent,
+            AnnotationEntry annotationEntry, Object convertedObject);
 
-    void processCrossValidation(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage) throws ValidatorException;
+    void processCrossValidation(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage)
+            throws ValidatorException;
 }

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/DateIsStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/DateIsStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/DateIsStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/DateIsStrategy.java Thu Aug 14 19:17:02 2008
@@ -31,7 +31,8 @@
 /**
  * @author Gerhard Petracek
  */
-public class DateIsStrategy extends AbstractCompareStrategy {
+public class DateIsStrategy extends AbstractCompareStrategy
+{
     //TODO
     protected static final String TOO_EARLY = "early";
     protected static final String TOO_LATE = "late";
@@ -39,115 +40,170 @@
     protected static final String RESULT_KEY = "result";
     protected static final String COMPARED_VALUE_KEY = "target value";
 
-    public boolean useTargetComponentToDisplayErrorMsg(CrossValidationStorageEntry crossValidationStorageEntry) {
+    public boolean useTargetComponentToDisplayErrorMsg(
+            CrossValidationStorageEntry crossValidationStorageEntry)
+    {
         return true;
     }
 
     //TODO
-    public boolean isViolation(Object object1, Object object2, Annotation annotation) {
+    public boolean isViolation(Object object1, Object object2,
+            Annotation annotation)
+    {
         boolean violationFound;
 
-        if (((DateIs) annotation).type().equals(DateIsType.same)) {
+        if (((DateIs) annotation).type().equals(DateIsType.same))
+        {
             violationFound = object1 != null && !object1.equals(object2);
 
-            if (violationFound) {
-                this.violationResultStorage.put(RESULT_KEY, NOT_EQUAL_DATE_TIME);
+            if (violationFound)
+            {
+                this.violationResultStorage
+                        .put(RESULT_KEY, NOT_EQUAL_DATE_TIME);
             }
-        } else if (((DateIs) annotation).type().equals(DateIsType.before)) {
-            violationFound = object1 != null && object2 != null && (!new Date(((Date) object1).getTime()).before((Date) object2) || object1.equals(object2));
+        }
+        else if (((DateIs) annotation).type().equals(DateIsType.before))
+        {
+            violationFound = object1 != null
+                    && object2 != null
+                    && (!new Date(((Date) object1).getTime())
+                            .before((Date) object2) || object1.equals(object2));
 
-            if (violationFound) {
+            if (violationFound)
+            {
                 this.violationResultStorage.put(RESULT_KEY, TOO_LATE);
             }
-        } else {
-            violationFound = object1 != null && object2 != null && (!new Date(((Date) object1).getTime()).after((Date) object2) || object1.equals(object2));
+        }
+        else
+        {
+            violationFound = object1 != null
+                    && object2 != null
+                    && (!new Date(((Date) object1).getTime())
+                            .after((Date) object2) || object1.equals(object2));
 
-            if (violationFound) {
+            if (violationFound)
+            {
                 this.violationResultStorage.put(RESULT_KEY, TOO_EARLY);
             }
         }
 
-        if (violationFound) {
+        if (violationFound)
+        {
             this.violationResultStorage.put(COMPARED_VALUE_KEY, object1);
         }
 
         return violationFound;
     }
 
-    public String[] getValidationTargets(Annotation annotation) {
+    public String[] getValidationTargets(Annotation annotation)
+    {
         return ((DateIs) annotation).valueOf();
     }
 
     /*
      * protected
      */
-    protected String getValidationErrorMsgKey(Annotation annotation, boolean isTargetComponent) {
-        if (!isTargetComponent) {
+    protected String getValidationErrorMsgKey(Annotation annotation,
+            boolean isTargetComponent)
+    {
+        if (!isTargetComponent)
+        {
             return null;
         }
 
         String result = (String) this.violationResultStorage.get(RESULT_KEY);
-        if (TOO_EARLY.equals(result)) {
+        if (TOO_EARLY.equals(result))
+        {
             return getNotAfterErrorMsgKey((DateIs) annotation);
-        } else if (TOO_LATE.equals(result)) {
+        }
+        else if (TOO_LATE.equals(result))
+        {
             return getNotBeforeErrorMsgKey((DateIs) annotation);
-        } else {
+        }
+        else
+        {
             return getNotEqualErrorMsgKey((DateIs) annotation);
         }
     }
 
     @Override
-    protected String getErrorMessageSummary(Annotation annotation, boolean isTargetComponent) {
-        if (!isTargetComponent) {
+    protected String getErrorMessageSummary(Annotation annotation,
+            boolean isTargetComponent)
+    {
+        if (!isTargetComponent)
+        {
             return super.getErrorMessageSummary(annotation, isTargetComponent);
         }
 
-        return getErrorMessage(getValidationErrorMsgKey(annotation, isTargetComponent), annotation, isTargetComponent);
+        return getErrorMessage(getValidationErrorMsgKey(annotation,
+                isTargetComponent), annotation, isTargetComponent);
     }
 
     @Override
-    protected String getErrorMessageDetails(Annotation annotation, boolean isTargetComponent) {
-        if (!isTargetComponent) {
+    protected String getErrorMessageDetails(Annotation annotation,
+            boolean isTargetComponent)
+    {
+        if (!isTargetComponent)
+        {
             return super.getErrorMessageDetails(annotation, isTargetComponent);
         }
 
-        try {
-            return getErrorMessage(getValidationErrorMsgKey(annotation, isTargetComponent) + DETAIL_MESSAGE_KEY_POSTFIX, annotation, isTargetComponent);
-        } catch (MissingResourceException e) {
-            logger.warn("couldn't find key " + getValidationErrorMsgKey(annotation, isTargetComponent) + DETAIL_MESSAGE_KEY_POSTFIX, e);
+        try
+        {
+            return getErrorMessage(getValidationErrorMsgKey(annotation,
+                    isTargetComponent)
+                    + DETAIL_MESSAGE_KEY_POSTFIX, annotation, isTargetComponent);
+        }
+        catch (MissingResourceException e)
+        {
+            logger.warn("couldn't find key "
+                    + getValidationErrorMsgKey(annotation, isTargetComponent)
+                    + DETAIL_MESSAGE_KEY_POSTFIX, e);
         }
         return null;
     }
 
     //TODO
-    protected String getErrorMessage(String key, Annotation annotation, boolean isTargetComponent) {
+    protected String getErrorMessage(String key, Annotation annotation,
+            boolean isTargetComponent)
+    {
         String message = resolveMessage(key);
 
-        DateFormat dateFormat = DateFormat.getDateInstance(((DateIs) annotation).errorMessageDateStyle(), FacesContext.getCurrentInstance().getViewRoot().getLocale());
+        DateFormat dateFormat = DateFormat.getDateInstance(
+                ((DateIs) annotation).errorMessageDateStyle(), FacesContext
+                        .getCurrentInstance().getViewRoot().getLocale());
 
         //replace placeholder with the value of the other component
-        return message.replace("{0}", dateFormat.format((Date) this.violationResultStorage.get(COMPARED_VALUE_KEY)));
+        return message.replace("{0}", dateFormat
+                .format((Date) this.violationResultStorage
+                        .get(COMPARED_VALUE_KEY)));
     }
 
     /*
      * private
      */
-    private String getNotAfterErrorMsgKey(DateIs annotation) {
-        if (annotation.validationErrorMsgKey().equals("")) {
+    private String getNotAfterErrorMsgKey(DateIs annotation)
+    {
+        if (annotation.validationErrorMsgKey().equals(""))
+        {
             return annotation.notAfterErrorMsgKey();
         }
         return annotation.validationErrorMsgKey();
     }
 
-    private String getNotBeforeErrorMsgKey(DateIs annotation) {
-        if (annotation.validationErrorMsgKey().equals("")) {
+    private String getNotBeforeErrorMsgKey(DateIs annotation)
+    {
+        if (annotation.validationErrorMsgKey().equals(""))
+        {
             return annotation.notBeforeErrorMsgKey();
         }
         return annotation.validationErrorMsgKey();
     }
 
-    private String getNotEqualErrorMsgKey(DateIs annotation) {
-        if (annotation.validationErrorMsgKey().equals("")) {
+    private String getNotEqualErrorMsgKey(DateIs annotation)
+    {
+        if (annotation.validationErrorMsgKey().equals(""))
+        {
             return annotation.notEqualErrorMsgKey();
         }
         return annotation.validationErrorMsgKey();

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/EqualsStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/EqualsStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/EqualsStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/EqualsStrategy.java Thu Aug 14 19:17:02 2008
@@ -26,21 +26,29 @@
 /**
  * @author Gerhard Petracek
  */
-public class EqualsStrategy extends AbstractCompareStrategy {
+public class EqualsStrategy extends AbstractCompareStrategy
+{
 
-    public boolean useTargetComponentToDisplayErrorMsg(CrossValidationStorageEntry crossValidationStorageEntry) {
+    public boolean useTargetComponentToDisplayErrorMsg(
+            CrossValidationStorageEntry crossValidationStorageEntry)
+    {
         return true;
     }
 
-    protected String getValidationErrorMsgKey(Annotation annotation, boolean isTargetComponent) {
+    protected String getValidationErrorMsgKey(Annotation annotation,
+            boolean isTargetComponent)
+    {
         return ((Equals) annotation).validationErrorMsgKey();
     }
 
-    public boolean isViolation(Object object1, Object object2, Annotation annotation) {
+    public boolean isViolation(Object object1, Object object2,
+            Annotation annotation)
+    {
         return object1 != null && !object1.equals(object2);
     }
 
-    public String[] getValidationTargets(Annotation annotation) {
+    public String[] getValidationTargets(Annotation annotation)
+    {
         return ((Equals) annotation).value();
     }
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/NotEqualsStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/NotEqualsStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/NotEqualsStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/NotEqualsStrategy.java Thu Aug 14 19:17:02 2008
@@ -25,20 +25,26 @@
 /**
  * @author Gerhard Petracek
  */
-public class NotEqualsStrategy extends EqualsStrategy {
+public class NotEqualsStrategy extends EqualsStrategy
+{
 
     @Override
-    protected String getValidationErrorMsgKey(Annotation annotation, boolean isTargetComponent) {
+    protected String getValidationErrorMsgKey(Annotation annotation,
+            boolean isTargetComponent)
+    {
         return ((NotEquals) annotation).validationErrorMsgKey();
     }
 
     @Override
-    public boolean isViolation(Object object1, Object object2, Annotation annotation) {
+    public boolean isViolation(Object object1, Object object2,
+            Annotation annotation)
+    {
         return !super.isViolation(object1, object2, annotation);
     }
 
     @Override
-    public String[] getValidationTargets(Annotation annotation) {
+    public String[] getValidationTargets(Annotation annotation)
+    {
         return ((NotEquals) annotation).value();
     }
 }

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/RequiredIfStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/RequiredIfStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/RequiredIfStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/RequiredIfStrategy.java Thu Aug 14 19:17:02 2008
@@ -27,29 +27,43 @@
 /**
  * @author Gerhard Petracek
  */
-public class RequiredIfStrategy extends AbstractCompareStrategy {
+public class RequiredIfStrategy extends AbstractCompareStrategy
+{
 
-    public boolean useTargetComponentToDisplayErrorMsg(CrossValidationStorageEntry crossValidationStorageEntry) {
+    public boolean useTargetComponentToDisplayErrorMsg(
+            CrossValidationStorageEntry crossValidationStorageEntry)
+    {
         return false;
     }
 
-    protected String getValidationErrorMsgKey(Annotation annotation, boolean isTargetComponent) {
+    protected String getValidationErrorMsgKey(Annotation annotation,
+            boolean isTargetComponent)
+    {
         return ((RequiredIf) annotation).validationErrorMsgKey();
     }
 
-    public boolean isViolation(Object object1, Object object2, Annotation annotation) {
+    public boolean isViolation(Object object1, Object object2,
+            Annotation annotation)
+    {
         boolean violationFound = false;
 
-        if (((RequiredIf) annotation).is().equals(RequiredIfType.empty)) {
-            violationFound = (object2 == null || object2.equals("")) && (object1 == null || object1.equals(""));
-        } else if (((RequiredIf) annotation).is().equals(RequiredIfType.not_empty)) {
-            violationFound = (object2 != null && !object2.equals("")) && (object1 == null || object1.equals(""));
+        if (((RequiredIf) annotation).is().equals(RequiredIfType.empty))
+        {
+            violationFound = (object2 == null || object2.equals(""))
+                    && (object1 == null || object1.equals(""));
+        }
+        else if (((RequiredIf) annotation).is()
+                .equals(RequiredIfType.not_empty))
+        {
+            violationFound = (object2 != null && !object2.equals(""))
+                    && (object1 == null || object1.equals(""));
         }
 
         return violationFound;
     }
 
-    public String[] getValidationTargets(Annotation annotation) {
+    public String[] getValidationTargets(Annotation annotation)
+    {
         return ((RequiredIf) annotation).valueOf();
     }
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/TargetAliasStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/TargetAliasStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/TargetAliasStrategy.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/TargetAliasStrategy.java Thu Aug 14 19:17:02 2008
@@ -27,13 +27,19 @@
 /**
  * @author Gerhard Petracek
  */
-public class TargetAliasStrategy extends AbstractCrossValidationStrategy {
-    public void processCrossValidation(CrossValidationStorageEntry crossValidationStorageEntry, CrossValidationStorage crossValidationStorage) throws ValidatorException {
+public class TargetAliasStrategy extends AbstractCrossValidationStrategy
+{
+    public void processCrossValidation(
+            CrossValidationStorageEntry crossValidationStorageEntry,
+            CrossValidationStorage crossValidationStorage)
+            throws ValidatorException
+    {
         //do nothing - it's just a marker - the inherited functionality is required and enough
     }
 
     //TODO
-    protected String getValidationErrorMsgKey(Annotation annotation) {
+    protected String getValidationErrorMsgKey(Annotation annotation)
+    {
         //do nothing - it's just a marker - the inherited functionality is required and enough
         return null;
     }

Modified: myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/util/CrossValidationUtils.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/util/CrossValidationUtils.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/util/CrossValidationUtils.java (original)
+++ myfaces/extensions/validator/trunk/validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/util/CrossValidationUtils.java Thu Aug 14 19:17:02 2008
@@ -26,20 +26,31 @@
 /**
  * @author Gerhard Petracek
  */
-public class CrossValidationUtils {
-    public static final String CROSS_VALIDATION_STORAGE_KEY = CrossValidationStorage.class.getName();
+public class CrossValidationUtils
+{
+    public static final String CROSS_VALIDATION_STORAGE_KEY = CrossValidationStorage.class
+            .getName();
 
-    public static CrossValidationStorage getOrInitCrossValidationStorage() {
-        Map requestMap = FacesContext.getCurrentInstance().getExternalContext().getRequestMap();
+    public static CrossValidationStorage getOrInitCrossValidationStorage()
+    {
+        Map requestMap = FacesContext.getCurrentInstance().getExternalContext()
+                .getRequestMap();
 
-        if (!requestMap.containsKey(CROSS_VALIDATION_STORAGE_KEY)) {
+        if (!requestMap.containsKey(CROSS_VALIDATION_STORAGE_KEY))
+        {
             resetCrossValidationStorage();
         }
 
-        return (CrossValidationStorage) requestMap.get(CROSS_VALIDATION_STORAGE_KEY);
+        return (CrossValidationStorage) requestMap
+                .get(CROSS_VALIDATION_STORAGE_KEY);
     }
 
-    public static void resetCrossValidationStorage() {
-        FacesContext.getCurrentInstance().getExternalContext().getRequestMap().put(CROSS_VALIDATION_STORAGE_KEY, new CrossValidationStorage());
+    public static void resetCrossValidationStorage()
+    {
+        FacesContext
+                .getCurrentInstance()
+                .getExternalContext()
+                .getRequestMap()
+                .put(CROSS_VALIDATION_STORAGE_KEY, new CrossValidationStorage());
     }
 }