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) {