You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by rm...@apache.org on 2021/10/31 10:27:59 UTC

[openwebbeans] branch master updated: class.isAnonymous() can fail in NoClassDefFoundError, ensure it is handled as such in BeansDeployer and does not make the deployment failling

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

rmannibucau pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwebbeans.git


The following commit(s) were added to refs/heads/master by this push:
     new 5fc54b0  class.isAnonymous() can fail in NoClassDefFoundError, ensure it is handled as such in BeansDeployer and does not make the deployment failling
5fc54b0 is described below

commit 5fc54b005f4ca2bae55a3b89e53fd2fbf3cac101
Author: Romain Manni-Bucau <rm...@gmail.com>
AuthorDate: Sun Oct 31 11:27:55 2021 +0100

    class.isAnonymous() can fail in NoClassDefFoundError, ensure it is handled as such in BeansDeployer and does not make the deployment failling
---
 .../org/apache/webbeans/config/BeansDeployer.java  | 36 +++++++++++-----------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java b/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java
index e29302e..408bf16 100644
--- a/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java
+++ b/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java
@@ -1352,32 +1352,32 @@ public class BeansDeployer
             boolean hasPATObserver = webBeansContext.getNotificationManager().hasProcessAnnotatedTypeObservers();
             for (Class<?> implClass : classIndex)
             {
-                if (foundClasses.contains(implClass) || implClass.isAnonymousClass() ||
-                        Modifier.isPrivate(implClass.getModifiers() /* likely inner class */))
+                try
                 {
-                    // skip this class
-                    continue;
-                }
+                    if (foundClasses.contains(implClass) || implClass.isAnonymousClass() ||
+                            Modifier.isPrivate(implClass.getModifiers() /* likely inner class */))
+                    {
+                        // skip this class
+                        continue;
+                    }
 
-                foundClasses.add(implClass);
+                    foundClasses.add(implClass);
 
-                if (isVetoed(implClass))
-                {
-                    if (isEEComponent(implClass))
+                    if (isVetoed(implClass))
                     {
-                        // fire injection point events and forget
-                        AnnotatedType<?> annotatedType = annotatedElementFactory.newAnnotatedType(implClass);
-                        InjectionTarget<?> it = webBeansContext.getBeanManagerImpl().createInjectionTarget(annotatedType);
-                        for (InjectionPoint ip : it.getInjectionPoints())
+                        if (isEEComponent(implClass))
                         {
-                            webBeansContext.getWebBeansUtil().fireProcessInjectionPointEvent(ip);
+                            // fire injection point events and forget
+                            AnnotatedType<?> annotatedType = annotatedElementFactory.newAnnotatedType(implClass);
+                            InjectionTarget<?> it = webBeansContext.getBeanManagerImpl().createInjectionTarget(annotatedType);
+                            for (InjectionPoint ip : it.getInjectionPoints())
+                            {
+                                webBeansContext.getWebBeansUtil().fireProcessInjectionPointEvent(ip);
+                            }
                         }
+                        continue;
                     }
-                    continue;
-                }
 
-                try
-                {
                     //Define annotation type
                     AnnotatedType<?> annotatedType = annotatedElementFactory.getAnnotatedType(implClass);
                     if (annotatedType == null) // mean no annotation created it (normal case)