Author: rmannibucau
Date: Thu Dec 20 09:54:17 2012
New Revision: 1424384

URL: http://svn.apache.org/viewvc?rev=1424384&view=rev
Log:
TOMEE-674 using right classloader to load cdi extensions

Modified:
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java?rev=1424384&r1=1424383&r2=1424384&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
 Thu Dec 20 09:54:17 2012
@@ -352,7 +352,8 @@ public class OpenEJBLifecycle implements
         final ExtensionLoader extensionLoader = 
webBeansContext.getExtensionLoader();
 
         // Load regularly visible Extensions
-        extensionLoader.loadExtensionServices(appContext.getClassLoader());
+        
extensionLoader.loadExtensionServices(Thread.currentThread().getContextClassLoader());
 // init in OpenEJBLifecycle
+
 
         // Load any potentially misplaced extensions -- TCK seems to be full 
of them
         // This could perhaps be improved or addressed elsewhere

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java?rev=1424384&r1=1424383&r2=1424384&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java
 Thu Dec 20 09:54:17 2012
@@ -52,11 +52,12 @@ public class WebappBeanManager extends B
             return false;
         }
     };
-    private final Set<Bean<?>> deploymentBeans = new 
CopyOnWriteArraySet<Bean<?>>();
+    private Set<Bean<?>> deploymentBeans;
 
     public WebappBeanManager(WebappWebBeansContext ctx) {
         super(ctx);
         webappCtx = ctx;
+        deploymentBeans = super.getBeans(); // use the parent one while 
starting
     }
 
     @Override
@@ -387,7 +388,7 @@ public class WebappBeanManager extends B
     }
 
     public void afterStart() {
-        deploymentBeans.clear();
+        deploymentBeans = new CopyOnWriteArraySet<Bean<?>>(); // override 
parent one with a "webapp" bean list
         for (Bean<?> bean : getParentBm().getBeans()) {
             if (bean instanceof BeanManagerBean || bean instanceof 
BuildInOwbBean
                     || bean instanceof ConversationBean || bean instanceof 
InjectionPointBean) {


Reply via email to