This is an automated email from the ASF dual-hosted git repository.

kwin pushed a commit to branch bugfix/improve-logging-for-injectableelement
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-models-impl.git

commit 500ea2eac354e7c066f15f55685b57e974a080e8
Author: Konrad Windszus <[email protected]>
AuthorDate: Fri Nov 17 11:11:23 2023 +0100

    SLING-12158 improve logging in InjectableElements
---
 .../sling/models/impl/model/AbstractInjectableElement.java     | 10 +++++-----
 .../org/apache/sling/models/impl/model/InjectableField.java    |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git 
a/src/main/java/org/apache/sling/models/impl/model/AbstractInjectableElement.java
 
b/src/main/java/org/apache/sling/models/impl/model/AbstractInjectableElement.java
index 0f5c205..1ed8b53 100644
--- 
a/src/main/java/org/apache/sling/models/impl/model/AbstractInjectableElement.java
+++ 
b/src/main/java/org/apache/sling/models/impl/model/AbstractInjectableElement.java
@@ -175,11 +175,11 @@ abstract class AbstractInjectableElement implements 
InjectableElement {
                 } else if (itemType == Double.class) {
                     value = arrayToTypedList(defaultAnnotation.doubleValues());
                 } else {
-                    log.warn("Default values for {} List/Collection are not 
supported", itemType);
+                    log.warn("Default values for {} List/Collection are not 
supported (used on {})", itemType, element);
                 }
             }
             else {
-                log.warn("Cannot provide default for {}", type);
+                log.warn("Cannot provide default for {} (used on {})", type, 
element);
             }
         }
         else if (type instanceof Class) {
@@ -213,7 +213,7 @@ abstract class AbstractInjectableElement implements 
InjectableElement {
                 } else if (componentType == Double.class) {
                     value = 
ArrayUtils.toObject(defaultAnnotation.doubleValues());
                 } else {
-                    log.warn("Default values for {} are not supported", 
componentType);
+                    log.warn("Default values for {} are not supported  (used 
on {})", componentType, element);
                 }
             } else {
                 if (injectedClass == String.class) {
@@ -231,11 +231,11 @@ abstract class AbstractInjectableElement implements 
InjectableElement {
                 } else if (injectedClass == Double.class) {
                     value = defaultAnnotation.doubleValues().length == 0 ? 0d 
: defaultAnnotation.doubleValues()[0];
                 } else {
-                    log.warn("Default values for {} are not supported", 
injectedClass);
+                    log.warn("Default values for {} are not supported  (used 
on {})", injectedClass, element);
                 }
             }
         } else {
-            log.warn("Cannot provide default for {}", type);
+            log.warn("Cannot provide default for {}  (used on {})", type, 
element);
         }
         return value;
     }
diff --git 
a/src/main/java/org/apache/sling/models/impl/model/InjectableField.java 
b/src/main/java/org/apache/sling/models/impl/model/InjectableField.java
index 161b369..10a70e1 100644
--- a/src/main/java/org/apache/sling/models/impl/model/InjectableField.java
+++ b/src/main/java/org/apache/sling/models/impl/model/InjectableField.java
@@ -41,7 +41,7 @@ public class InjectableField extends 
AbstractInjectableElement {
             field.setAccessible(true);
             field.set(createdObject, result.getValue());
         } catch (Exception e) {
-            return new ModelClassException("Could not inject field due to 
reflection issues", e);
+            return new ModelClassException("Could not inject field " + field + 
" due to reflection issues", e);
         }
         return null;
     }

Reply via email to