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

btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git


The following commit(s) were added to refs/heads/master by this push:
     new dd228da44d [ENHANCEMENT] Guice extensions: log which component we 
failed to load (#2496)
dd228da44d is described below

commit dd228da44d00b2f2641ecbf812585dcd8fb729c3
Author: Benoit TELLIER <btell...@linagora.com>
AuthorDate: Mon Nov 18 14:49:13 2024 +0700

    [ENHANCEMENT] Guice extensions: log which component we failed to load 
(#2496)
---
 .../james/modules/mailbox/PreDeletionHookLoaderImplTest.java      | 3 ++-
 .../src/main/java/org/apache/james/utils/GuiceGenericLoader.java  | 8 ++++++--
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git 
a/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
 
b/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
index 9ee9f191a2..030dfed875 100644
--- 
a/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
+++ 
b/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
@@ -50,7 +50,8 @@ class PreDeletionHookLoaderImplTest {
     @Test
     void createHookShouldThrowWhenClassNotFound() {
         assertThatThrownBy(() -> 
testee.createHook(PreDeletionHookConfiguration.forClass("invalid")))
-            .isInstanceOf(ClassNotFoundException.class);
+            .isInstanceOf(RuntimeException.class)
+            .hasMessageContaining("Failed to load invalid");
     }
 
     @Test
diff --git 
a/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
 
b/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
index 997059d821..32947a0b3e 100644
--- 
a/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
+++ 
b/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
@@ -53,8 +53,12 @@ public class GuiceGenericLoader {
         }
 
         public T instantiate(ClassName className) throws 
ClassNotFoundException {
-            Class<T> clazz = locateClass(className, namingSheme);
-            return injector.getInstance(clazz);
+            try {
+                Class<T> clazz = locateClass(className, namingSheme);
+                return injector.getInstance(clazz);
+            } catch (Exception e) {
+                throw new RuntimeException("Failed to load " + 
className.getName(), e);
+            }
         }
 
         private Class<T> locateClass(ClassName className, NamingScheme 
namingScheme) throws ClassNotFoundException {


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@james.apache.org
For additional commands, e-mail: notifications-h...@james.apache.org

Reply via email to