Author: rmannibucau
Date: Tue Oct 16 19:22:22 2012
New Revision: 1398936
URL: http://svn.apache.org/viewvc?rev=1398936&view=rev
Log:
TOMEE-465 cleaning up webbeanscontext + jsfclasses (Thanks Harald Wellmann for
the report)
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java?rev=1398936&r1=1398935&r2=1398936&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
Tue Oct 16 19:22:22 2012
@@ -113,6 +113,7 @@ import org.apache.webbeans.spi.ContextsS
import org.apache.webbeans.spi.LoaderService;
import org.apache.webbeans.spi.ResourceInjectionService;
import org.apache.webbeans.spi.ScannerService;
+import org.apache.webbeans.spi.SingletonService;
import org.apache.webbeans.spi.TransactionService;
import org.apache.webbeans.spi.adaptor.ELAdaptor;
import org.apache.xbean.finder.ResourceFinder;
@@ -1201,8 +1202,14 @@ public class Assembler extends Assembler
} else {
final WebBeansContext webBeansContext =
appContext.getWebBeansContext();
- if (webBeansContext != null &&
webBeansContext.getBeanManagerImpl().isInUse()) {
-
webBeansContext.getService(ContainerLifecycle.class).stopApplication(null);
+ if (webBeansContext != null) {
+ final ClassLoader old =
Thread.currentThread().getContextClassLoader();
+
Thread.currentThread().setContextClassLoader(appContext.getClassLoader());
+ try {
+
webBeansContext.getService(ContainerLifecycle.class).stopApplication(null);
+ } finally {
+ Thread.currentThread().setContextClassLoader(old);
+ }
}
final Map<String, Object> cb = appContext.getBindings();