You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by an...@apache.org on 2014/07/09 08:47:09 UTC

svn commit: r1609024 - in /tomee/tomee/branches/tomee-1.7.x: ./ container/openejb-core/ container/openejb-core/src/main/java/org/apache/openejb/cdi/ container/openejb-core/src/main/java/org/apache/openejb/util/ itests/openejb-itests-client/src/main/jav...

Author: andygumbrecht
Date: Wed Jul  9 06:47:09 2014
New Revision: 1609024

URL: http://svn.apache.org/r1609024
Log:
Merged revision(s) 1608897-1609016 from tomee/tomee/trunk

Added:
    tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/util/AppFinder.java
      - copied unchanged from r1609016, tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/AppFinder.java
Modified:
    tomee/tomee/branches/tomee-1.7.x/   (props changed)
    tomee/tomee/branches/tomee-1.7.x/container/openejb-core/pom.xml
    tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/ThreadSingletonServiceImpl.java
    tomee/tomee/branches/tomee-1.7.x/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/IvmTestServer.java

Propchange: tomee/tomee/branches/tomee-1.7.x/
------------------------------------------------------------------------------
  Merged /tomee/tomee/trunk:r1608897-1609016

Modified: tomee/tomee/branches/tomee-1.7.x/container/openejb-core/pom.xml
URL: http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/container/openejb-core/pom.xml?rev=1609024&r1=1609023&r2=1609024&view=diff
==============================================================================
--- tomee/tomee/branches/tomee-1.7.x/container/openejb-core/pom.xml (original)
+++ tomee/tomee/branches/tomee-1.7.x/container/openejb-core/pom.xml Wed Jul  9 06:47:09 2014
@@ -323,6 +323,12 @@
             <exclude>**/TestHandler.java</exclude>
             <exclude>org/apache/openejb/cdi/**</exclude>
           </excludes>
+          <properties>
+            <property>
+              <name>listener</name>
+              <value>org.apache.openejb.tool.junit.OpenEJBJUnitDebugListener</value>
+            </property>
+          </properties>
         </configuration>
         <executions>
           <execution>

Modified: tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/ThreadSingletonServiceImpl.java
URL: http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/ThreadSingletonServiceImpl.java?rev=1609024&r1=1609023&r2=1609024&view=diff
==============================================================================
--- tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/ThreadSingletonServiceImpl.java (original)
+++ tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/ThreadSingletonServiceImpl.java Wed Jul  9 06:47:09 2014
@@ -21,9 +21,9 @@ import org.apache.openejb.AppContext;
 import org.apache.openejb.OpenEJBRuntimeException;
 import org.apache.openejb.assembler.classic.AppInfo;
 import org.apache.openejb.assembler.classic.EjbJarInfo;
-import org.apache.openejb.core.WebContext;
 import org.apache.openejb.loader.SystemInstance;
 import org.apache.openejb.spi.ContainerSystem;
+import org.apache.openejb.util.AppFinder;
 import org.apache.openejb.util.LogCategory;
 import org.apache.openejb.util.Logger;
 import org.apache.openejb.util.classloader.MultipleClassLoader;
@@ -256,36 +256,13 @@ public class ThreadSingletonServiceImpl 
             return context;
         }
 
-        final ContainerSystem containerSystem = SystemInstance.get().getComponent(ContainerSystem.class);
-        for (final AppContext appContext : containerSystem.getAppContexts()) {
-            final ClassLoader appContextClassLoader = appContext.getClassLoader();
-            if (appContextClassLoader.equals(cl) || (cl != null && cl.equals(appContextClassLoader))) { // CxfContainerLoader is not symmetric
-                context = appContext.getWebBeansContext();
-                break;
-            }
-            for (final WebContext web : appContext.getWebContexts()) {
-                final ClassLoader webClassLoader = web.getClassLoader();
-                if (webClassLoader.equals(cl) || (cl != null && cl.equals(webClassLoader))) {
-                    if (web.getWebbeansContext() != null) { // ear
-                        context = web.getWebbeansContext();
-                        break;
-                    } else { // war
-                        context = appContext.getWebBeansContext();
-                        break;
-                    }
-                }
-            }
-            if (context != null) {
-                break;
-            }
-        }
-
+        context = AppFinder.findAppContextOrWeb(cl, AppFinder.WebBeansContextTransformer.INSTANCE);
         if (context == null) {
             context = contexts.get();
             if (context == null) {
                 // Fallback strategy is to just grab the first AppContext and assume it is the right one
                 // This kind of algorithm could be greatly improved
-                final List<AppContext> appContexts = containerSystem.getAppContexts();
+                final List<AppContext> appContexts = SystemInstance.get().getComponent(ContainerSystem.class).getAppContexts();
                 if (appContexts.size() > 0) {
                     return getWebBeansContext(appContexts);
                 }

Modified: tomee/tomee/branches/tomee-1.7.x/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/IvmTestServer.java
URL: http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/IvmTestServer.java?rev=1609024&r1=1609023&r2=1609024&view=diff
==============================================================================
--- tomee/tomee/branches/tomee-1.7.x/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/IvmTestServer.java (original)
+++ tomee/tomee/branches/tomee-1.7.x/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/IvmTestServer.java Wed Jul  9 06:47:09 2014
@@ -19,6 +19,7 @@ package org.apache.openejb.test;
 import javax.naming.Context;
 import javax.naming.InitialContext;
 import java.util.Properties;
+import java.util.Random;
 
 /**
  * @version $Rev$ $Date$
@@ -35,8 +36,8 @@ public class IvmTestServer implements Te
         try {
             props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
 
-            props.put("My DataSource", "new://Resource?type=DataSource");
-            props.put("My DataSource.JdbcUrl", "jdbc:hsqldb:mem:IvmTestServer;hsqldb.tx=MVCC");
+            props.put("Default JDBC Database", "new://Resource?type=DataSource");
+            props.put("Default JDBC Database.JdbcUrl", "jdbc:hsqldb:mem:" + IvmTestServer.class.getSimpleName() + new Random().nextInt(250) + ";shutdown=true");
 
             final Properties p = new Properties();
             p.putAll(props);