SLING-4213 - adjust to localized validation failures

git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1723665 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/sling/models/validation/InvalidResourceException.java b/src/main/java/org/apache/sling/models/validation/InvalidResourceException.java
index f589df9..352d0f4 100644
--- a/src/main/java/org/apache/sling/models/validation/InvalidResourceException.java
+++ b/src/main/java/org/apache/sling/models/validation/InvalidResourceException.java
@@ -16,12 +16,16 @@
  */
 package org.apache.sling.models.validation;
 
+import java.util.ResourceBundle;
+
+import javax.annotation.Nonnull;
+
 import org.apache.sling.models.factory.InvalidModelException;
 import org.apache.sling.validation.ValidationFailure;
 import org.apache.sling.validation.ValidationResult;
 
 /**
- * Exception embedding a ValidationResult from Sling Validation.
+ * Exception embedding a {@link ValidationResult} from Sling Validation.
  *
  */
 public class InvalidResourceException extends InvalidModelException {
@@ -54,12 +58,16 @@
         return path;
     }
 
-    @Override
-    public String getMessage() {
+    /**
+     * This is not the regular {@link Exception#getMessage()} as it requires an additional resourceBundle parameter to look up the localized message.
+     * @param resourceBundle
+     * @return the localized validation messages bound to the {@link ValidationResult} wrapped by this exception
+     */
+    public String getMessage(@Nonnull ResourceBundle resourceBundle) {
         StringBuilder builder = new StringBuilder("Validation errors for ");
         builder.append("'" + path +"':");
         for (ValidationFailure failure : result.getFailures()) {
-            builder.append("\n" + failure.getLocation() + ":" + failure.getMessage() + "\n\t");
+            builder.append("\n" + failure.getLocation() + ":" + failure.getMessage(resourceBundle) + "\n\t");
         }
         return builder.toString();
     }