if (validationLog.isDebugEnabled()) validationLog.debug("Validation failed with exception: " + e + " value: " + value + " keyPath: " + keyPath);
if (validationLog.isDebugEnabled()) { validationLog.debug("Validation failed with exception: " + e + " value: " + value + " keyPath: " + keyPath); }
    public void validationFailedWithException(Throwable e, Object value, String keyPath) {        if (validationLog.isDebugEnabled())            validationLog.debug("Validation failed with exception: " + e + " value: " + value + " keyPath: " + keyPath);        if (shouldCollectValidationExceptions()) {            if (e instanceof ERXValidationException) {                ERXValidationException erv = (ERXValidationException)e;                erv.setContext(d2wContext());                errorKeyOrder.addObject(d2wContext().displayNameForProperty());                errorMessages.setObjectForKey(erv.getMessage(), d2wContext().displayNameForProperty());                if (erv.eoObject() != null && erv.propertyKey() != null && shouldSetFailedValidationValue()) {                    erv.eoObject().takeValueForKeyPath(value, erv.propertyKey());                }               } else {                _temp.removeAllObjects();                ERXValidation.validationFailedWithException(e, value, keyPath, _temp, propertyKey(), ERXLocalizer.currentLocalizer(), d2wContext().entity(), shouldSetFailedValidationValue());                errorKeyOrder.addObjectsFromArray(_temp.allKeys());                errorMessages.addEntriesFromDictionary(_temp);            }            d2wContext().takeValueForKey(errorMessages, Keys.errorMessages);            if (keyPath != null) {                // this is set when you have multiple keys failing                // your keyPath should look like "foo,bar.baz"                if(keyPath.indexOf(",") > 0) {                    keyPathsWithValidationExceptions.addObjectsFromArray(NSArray.componentsSeparatedByString(keyPath, ","));                } else {                    keyPathsWithValidationExceptions.addObject(keyPath);                }            }        } else if (parent() != null && shouldPropagateExceptions()) {            parent().validationFailedWithException(e, value, keyPath);        }    }