You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by st...@apache.org on 2015/05/16 23:28:07 UTC

[1/7] tomee git commit: TOMEE-1585 liveHandleRegistry was not thread safe

Repository: tomee
Updated Branches:
  refs/heads/fb_tomee2_owb16 c8c7f5c91 -> c0ffb49b8


TOMEE-1585 liveHandleRegistry was not thread safe


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/7ddafafc
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/7ddafafc
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/7ddafafc

Branch: refs/heads/fb_tomee2_owb16
Commit: 7ddafafc58708d9cb1356c646a922b76c477452e
Parents: ff024a2
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Fri May 15 15:01:21 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Fri May 15 15:01:21 2015 +0200

----------------------------------------------------------------------
 .../openejb/core/ivm/BaseEjbProxyHandler.java   | 51 ++++++++++----------
 1 file changed, 26 insertions(+), 25 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/7ddafafc/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/BaseEjbProxyHandler.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/BaseEjbProxyHandler.java b/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/BaseEjbProxyHandler.java
index e632778..ac0e1dd 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/BaseEjbProxyHandler.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/BaseEjbProxyHandler.java
@@ -29,16 +29,6 @@ import org.apache.openejb.spi.ContainerSystem;
 import org.apache.openejb.spi.SecurityService;
 import org.apache.openejb.util.proxy.LocalBeanProxyFactory;
 
-import javax.ejb.AccessLocalException;
-import javax.ejb.EJBException;
-import javax.ejb.EJBTransactionRequiredException;
-import javax.ejb.EJBTransactionRolledbackException;
-import javax.ejb.NoSuchEJBException;
-import javax.ejb.NoSuchObjectLocalException;
-import javax.ejb.TransactionRequiredLocalException;
-import javax.ejb.TransactionRolledbackLocalException;
-import javax.transaction.TransactionRequiredException;
-import javax.transaction.TransactionRolledbackException;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
@@ -57,12 +47,23 @@ import java.rmi.NoSuchObjectException;
 import java.rmi.Remote;
 import java.rmi.RemoteException;
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 import java.util.WeakHashMap;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
 import java.util.concurrent.locks.ReentrantLock;
+import javax.ejb.AccessLocalException;
+import javax.ejb.EJBException;
+import javax.ejb.EJBTransactionRequiredException;
+import javax.ejb.EJBTransactionRolledbackException;
+import javax.ejb.NoSuchEJBException;
+import javax.ejb.NoSuchObjectLocalException;
+import javax.ejb.TransactionRequiredLocalException;
+import javax.ejb.TransactionRolledbackLocalException;
+import javax.transaction.TransactionRequiredException;
+import javax.transaction.TransactionRolledbackException;
 
 import static org.apache.openejb.core.ivm.IntraVmCopyMonitor.State.CLASSLOADER_COPY;
 import static org.apache.openejb.core.ivm.IntraVmCopyMonitor.State.COPY;
@@ -605,20 +606,20 @@ public abstract class BaseEjbProxyHandler implements InvocationHandler, Serializ
     protected abstract Object _writeReplace(Object proxy) throws ObjectStreamException;
 
     protected void registerHandler(final Object key, final BaseEjbProxyHandler handler) {
-        HashSet set = (HashSet) getLiveHandleRegistry().get(key);
-        if (set != null) {
-            final ReentrantLock l = lock;
-            l.lock();
-
-            try {
-                set.add(handler);
-            } finally {
-                l.unlock();
-            }
-        } else {
+        Set set = (Set) getLiveHandleRegistry().get(key);
+        if (set == null) {
             set = new HashSet();
+            final Object existing = getLiveHandleRegistry().putIfAbsent(key, set);
+            if (existing != null) {
+                set = Set.class.cast(existing);
+            }
+        }
+        final ReentrantLock l = lock;
+        l.lock();
+        try {
             set.add(handler);
-            getLiveHandleRegistry().put(key, set);
+        } finally {
+            l.unlock();
         }
     }
 
@@ -637,7 +638,7 @@ public abstract class BaseEjbProxyHandler implements InvocationHandler, Serializ
         this.beanContextRef = new WeakReference<BeanContext>(beanContext);
     }
 
-    public HashMap getLiveHandleRegistry() {
+    public ConcurrentMap getLiveHandleRegistry() {
         final BeanContext beanContext = getBeanContext();
         ProxyRegistry proxyRegistry = beanContext.get(ProxyRegistry.class);
         if (proxyRegistry == null) {
@@ -672,7 +673,7 @@ public abstract class BaseEjbProxyHandler implements InvocationHandler, Serializ
 
     private static class ProxyRegistry {
 
-        protected final HashMap liveHandleRegistry = new HashMap();
+        protected final ConcurrentMap liveHandleRegistry = new ConcurrentHashMap();
     }
 
 }


[2/7] tomee git commit: TOMEE-1580 persistence.xml root url when p.xml is in a jar + some datasource property adjustment to openejb namespace

Posted by st...@apache.org.
TOMEE-1580 persistence.xml root url when p.xml is in a jar + some datasource property adjustment to openejb namespace


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/f286297c
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/f286297c
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/f286297c

Branch: refs/heads/fb_tomee2_owb16
Commit: f286297cb4fc5eabd606ade2de40876df6d6ecaf
Parents: 7ddafaf
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Fri May 15 15:23:27 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Fri May 15 15:23:27 2015 +0200

----------------------------------------------------------------------
 .../org/apache/openejb/config/AppInfoBuilder.java   | 16 ++++++++++++++++
 .../org/apache/openejb/config/ReadDescriptors.java  |  7 +++++--
 2 files changed, 21 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/f286297c/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java b/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
index cc61204..755f017 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
@@ -98,6 +98,8 @@ import java.util.Properties;
 import java.util.Set;
 import javax.xml.bind.JAXBException;
 
+import static java.util.Arrays.asList;
+import static java.util.Collections.singletonList;
 import static org.apache.openejb.util.URLs.toFile;
 
 /**
@@ -870,6 +872,13 @@ class AppInfoBuilder {
                         info.properties.setProperty(ECLIPSELINK_SESSION_CUSTOMIZER, PREFIX_SESSION_CUSTOMIZER);
                     }
                 }
+
+                for (final String key : singletonList("eclipselink.jdbc.sequence-connection-pool.non-jta-data-source")) {
+                    final String ds = info.properties.getProperty(key);
+                    if (ds != null && !ds.contains(":") /* java:, openejb:, other: namespace */ ) {
+                        info.properties.setProperty(key, "java:openejb/Resource/" + ds);
+                    }
+                }
             } else if (info.provider == null || "org.apache.openjpa.persistence.PersistenceProviderImpl".equals(info.provider)) {
 
                 // Apply the overrides that apply to all persistence units of this provider
@@ -920,6 +929,13 @@ class AppInfoBuilder {
 
             // Apply the overrides that apply to just this persistence unit
             override(appModule.getProperties(), info);
+
+            for (final String key : asList("javax.persistence.jtaDataSource", "javax.persistence.nonJtaDataSource")) {
+                final String ds = info.properties.getProperty(key);
+                if (ds != null && !ds.contains(":") /* java:, openejb:, other: namespace */ ) {
+                    info.properties.setProperty(key, "java:openejb/Resource/" + ds);
+                }
+            }
         }
 
         private static void overrideFromSystemProp(final PersistenceUnitInfo info) {

http://git-wip-us.apache.org/repos/asf/tomee/blob/f286297c/container/openejb-core/src/main/java/org/apache/openejb/config/ReadDescriptors.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/config/ReadDescriptors.java b/container/openejb-core/src/main/java/org/apache/openejb/config/ReadDescriptors.java
index 5f951a1..1d3a978 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/config/ReadDescriptors.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/config/ReadDescriptors.java
@@ -147,9 +147,12 @@ public class ReadDescriptors implements DynamicDeployer {
                     path = file.getAbsolutePath();
 
                     if (file.getName().endsWith("persistence.xml")) {
-                        final String parent = file.getParentFile().getName();
+                        final File parentFile = file.getParentFile();
+                        final String parent = parentFile.getName();
                         if (parent.equalsIgnoreCase("WEB-INF") || parent.equalsIgnoreCase("META-INF")) {
-                            file = file.getParentFile().getParentFile();
+                            file = parentFile.getParentFile();
+                        } else if (parent.equalsIgnoreCase("lib") && "WEB-INF".equals(parentFile.getParentFile().getName())) {
+                            file = parentFile.getParentFile().getParentFile();
                         } else { // we don't really know so simply go back (users will often put persistence.xml in root resource folder with arquillian)
                             file = file.getParentFile();
                         }


[3/7] tomee git commit: TOMEE-1572 remove unused imports

Posted by st...@apache.org.
TOMEE-1572 remove unused imports


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/0f830665
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/0f830665
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/0f830665

Branch: refs/heads/fb_tomee2_owb16
Commit: 0f830665658dbd1e90b84ca64610db62b728e9fd
Parents: c8c7f5c
Author: Mark Struberg <st...@apache.org>
Authored: Sat May 16 15:30:39 2015 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Sat May 16 15:30:39 2015 +0200

----------------------------------------------------------------------
 .../main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java   | 2 --
 1 file changed, 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/0f830665/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
index a64dab3..847f4f6 100644
--- a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
+++ b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
@@ -79,7 +79,6 @@ import org.apache.openejb.assembler.classic.WebAppBuilder;
 import org.apache.openejb.assembler.classic.WebAppInfo;
 import org.apache.openejb.assembler.classic.event.NewEjbAvailableAfterApplicationCreated;
 import org.apache.openejb.cdi.CdiBuilder;
-import org.apache.openejb.cdi.OWBContextThreadListener;
 import org.apache.openejb.cdi.OpenEJBLifecycle;
 import org.apache.openejb.cdi.Proxys;
 import org.apache.openejb.config.AppModule;
@@ -129,7 +128,6 @@ import org.apache.tomee.common.NamingUtil;
 import org.apache.tomee.common.UserTransactionFactory;
 import org.apache.tomee.loader.TomcatHelper;
 import org.apache.webbeans.config.WebBeansContext;
-import org.apache.webbeans.spi.ContextsService;
 import org.apache.webbeans.spi.adaptor.ELAdaptor;
 import org.omg.CORBA.ORB;
 


[4/7] tomee git commit: TOMEE-1572 fix owb config ordinal

Posted by st...@apache.org.
TOMEE-1572 fix owb config ordinal


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/ae3b0e29
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/ae3b0e29
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/ae3b0e29

Branch: refs/heads/fb_tomee2_owb16
Commit: ae3b0e293c6b8fb25bf860f73244ce0e95b76ee4
Parents: 0f83066
Author: Mark Struberg <st...@apache.org>
Authored: Sat May 16 15:31:12 2015 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Sat May 16 15:31:12 2015 +0200

----------------------------------------------------------------------
 .../resources/META-INF/openwebbeans/openwebbeans.properties     | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/ae3b0e29/container/openejb-core/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/resources/META-INF/openwebbeans/openwebbeans.properties b/container/openejb-core/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
index 0a90b23..337d75b 100644
--- a/container/openejb-core/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
+++ b/container/openejb-core/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
@@ -16,6 +16,9 @@
 #
 
 
+# this is the default container configuration for OpenEJB. It overrides openwebbeans default ones
+configuration.ordinal=50
+
 
 #################################### Use OpenEJB Discovery ############################
 #If it is true, it checks every bean class whether or not represent EJB Bean
@@ -36,8 +39,6 @@ org.apache.webbeans.spi.deployer.useEjbMetaDataDiscoveryService=true
 ################################### DEFAULT SPI CONFIGURATION SECTION ##########################
 ################################################################################################
 
-# this is the basic configuration, thus it has a very low ordinal of 10
-configuration.ordinal=10
 
 ################################### Default Container Lifecycle ################################
 #Default implementation of org.apache.webbeans.corespi.ContainerLifecycle.


[5/7] tomee git commit: TOMEE-1572 force eager session creation for the TCK

Posted by st...@apache.org.
TOMEE-1572 force eager session creation for the TCK


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/f27aaf09
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/f27aaf09
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/f27aaf09

Branch: refs/heads/fb_tomee2_owb16
Commit: f27aaf09fe50c33605b4cb36c8323305ff6e2320
Parents: ae3b0e2
Author: Mark Struberg <st...@apache.org>
Authored: Sat May 16 15:33:06 2015 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Sat May 16 15:33:06 2015 +0200

----------------------------------------------------------------------
 .../openwebbeans/openwebbeans.properties        | 24 ++++++++++++++++++++
 1 file changed, 24 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/f27aaf09/tck/cdi-tomee/src/test/resources/META-INF/openwebbeans/openwebbeans.properties
----------------------------------------------------------------------
diff --git a/tck/cdi-tomee/src/test/resources/META-INF/openwebbeans/openwebbeans.properties b/tck/cdi-tomee/src/test/resources/META-INF/openwebbeans/openwebbeans.properties
new file mode 100644
index 0000000..7e7ca6a
--- /dev/null
+++ b/tck/cdi-tomee/src/test/resources/META-INF/openwebbeans/openwebbeans.properties
@@ -0,0 +1,24 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+
+# this contains a few additional config tweaks for the TCK
+configuration.ordinal=100
+
+# Enable eager session initialisation.
+# This is needed because some few TCK tests send back a response and only access a @SessionScoped bean afterwards.
+org.apache.webbeans.web.eagerSessionInitialisation=true


[6/7] tomee git commit: exclude challenged TCK test

Posted by st...@apache.org.
exclude challenged TCK test


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/f01415e4
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/f01415e4
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/f01415e4

Branch: refs/heads/fb_tomee2_owb16
Commit: f01415e43d01c05ea64ca331257bb48de9aa52dd
Parents: f27aaf0
Author: Mark Struberg <st...@apache.org>
Authored: Sat May 16 23:04:12 2015 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Sat May 16 23:04:12 2015 +0200

----------------------------------------------------------------------
 tck/cdi-tomee/src/test/resources/passing.xml | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/f01415e4/tck/cdi-tomee/src/test/resources/passing.xml
----------------------------------------------------------------------
diff --git a/tck/cdi-tomee/src/test/resources/passing.xml b/tck/cdi-tomee/src/test/resources/passing.xml
index 2c2820a..bcd44b2 100644
--- a/tck/cdi-tomee/src/test/resources/passing.xml
+++ b/tck/cdi-tomee/src/test/resources/passing.xml
@@ -62,6 +62,10 @@
       </class>
 
       <!-- Issues in the TCK -->
+      <!-- CDITCK-482 -->
+      <class name="org.jboss.cdi.tck.tests.context.session.listener.shutdown.SessionContextListenerShutdownTest">
+      </class>
+
       <!-- CDITCK-480 -->
       <class name="org.jboss.cdi.tck.tests.context.conversation.ClientConversationContextTest">
         <methods>


[7/7] tomee git commit: Merge branch 'master' into fb_tomee2_owb16

Posted by st...@apache.org.
Merge branch 'master' into fb_tomee2_owb16


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/c0ffb49b
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/c0ffb49b
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/c0ffb49b

Branch: refs/heads/fb_tomee2_owb16
Commit: c0ffb49b88e7b8abfa679310b036b23f8ff19b94
Parents: f01415e f286297
Author: Mark Struberg <st...@apache.org>
Authored: Sat May 16 23:27:24 2015 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Sat May 16 23:27:24 2015 +0200

----------------------------------------------------------------------
 .../apache/openejb/config/AppInfoBuilder.java   | 16 ++++++
 .../apache/openejb/config/ReadDescriptors.java  |  7 ++-
 .../openejb/core/ivm/BaseEjbProxyHandler.java   | 51 ++++++++++----------
 3 files changed, 47 insertions(+), 27 deletions(-)
----------------------------------------------------------------------