You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2014/12/19 17:01:20 UTC

[1/2] tomee git commit: disabling some services we don't need, adding some unload option to the surefire jvm + ensuring passvation validation are done for passivable ejbs - this part is clear in the spec but not in TCKs

Repository: tomee
Updated Branches:
  refs/heads/develop 3f0d06518 -> d57528671


disabling some services we don't need, adding some unload option to the surefire jvm + ensuring passvation validation are done for passivable ejbs - this part is clear in the spec but not in TCKs


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

Branch: refs/heads/develop
Commit: 22029b681e846c91bce4caeca12a47425bbb6558
Parents: 3f0d065
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Fri Dec 19 16:56:27 2014 +0100
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Fri Dec 19 16:57:46 2014 +0100

----------------------------------------------------------------------
 .../arquillian/openejb/OpenEJBDeployableContainer.java      | 8 ++++++--
 .../src/main/java/org/apache/openejb/cdi/CdiEjbBean.java    | 9 ++++++++-
 .../org/apache/openejb/cdi/ConstructorInjectionBean.java    | 2 +-
 tck/cdi-embedded/pom.xml                                    | 7 ++++++-
 tck/cdi-embedded/src/test/resources/failing.xml             | 2 +-
 5 files changed, 22 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/22029b68/arquillian/arquillian-openejb-embedded-5/src/main/java/org/apache/openejb/arquillian/openejb/OpenEJBDeployableContainer.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-openejb-embedded-5/src/main/java/org/apache/openejb/arquillian/openejb/OpenEJBDeployableContainer.java b/arquillian/arquillian-openejb-embedded-5/src/main/java/org/apache/openejb/arquillian/openejb/OpenEJBDeployableContainer.java
index 4ba6ae9..14cf79e 100644
--- a/arquillian/arquillian-openejb-embedded-5/src/main/java/org/apache/openejb/arquillian/openejb/OpenEJBDeployableContainer.java
+++ b/arquillian/arquillian-openejb-embedded-5/src/main/java/org/apache/openejb/arquillian/openejb/OpenEJBDeployableContainer.java
@@ -85,6 +85,7 @@ public class OpenEJBDeployableContainer implements DeployableContainer<OpenEJBCo
     }
 
     private static final ConcurrentMap<String, DeploymentInfo> DEPLOYMENT_INFO = new ConcurrentHashMap<String, DeploymentInfo>();
+    public static final AppContext NO_APP_CTX = new AppContext(null, SystemInstance.get(), null, null, null, false);
 
     // config
     private Properties properties;
@@ -270,15 +271,18 @@ public class OpenEJBDeployableContainer implements DeployableContainer<OpenEJBCo
         // otherwise if it was closed something can fail
         classLoader.set(OpenEJBDeployableContainer.class.getClassLoader());
 
-        if (appContext.get() == null) {
+        final AppContext ctx = appContext.get();
+        if (ctx == null) {
             return;
+        } else {
+            appContextProducer.set(NO_APP_CTX); // release all references of the previous one - classloaders whatever arquillian Instance impl is etc
         }
 
         try {
             if (!configuration.isSingleDeploymentByArchiveName(archive.getName())) {
                 assembler.destroyApplication(info.get().path);
             }
-            stopContexts(appContext.get().getWebBeansContext().getContextsService(), servletContext.get(), session.get());
+            stopContexts(ctx.getWebBeansContext().getContextsService(), servletContext.get(), session.get());
         } catch (final Exception e) {
             throw new DeploymentException("can't undeploy " + archive.getName(), e);
         }

http://git-wip-us.apache.org/repos/asf/tomee/blob/22029b68/container/openejb-core/src/main/java/org/apache/openejb/cdi/CdiEjbBean.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/cdi/CdiEjbBean.java b/container/openejb-core/src/main/java/org/apache/openejb/cdi/CdiEjbBean.java
index e29b8be..001de33 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/cdi/CdiEjbBean.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/cdi/CdiEjbBean.java
@@ -67,6 +67,7 @@ public class CdiEjbBean<T> extends BaseEjbBean<T> implements InterceptedMarker,
 
     private final BeanContext beanContext;
     private final boolean isDependentAndStateful;
+    private final boolean scopeNeedsPassivation;
 
     // initialized a bit later in the lifecycle but could be final otherwise
     private BeanContext.BusinessLocalBeanHome homeLocalBean;
@@ -84,6 +85,7 @@ public class CdiEjbBean<T> extends BaseEjbBean<T> implements InterceptedMarker,
         beanContext.set(Bean.class, this);
         passivatingId = beanContext.getDeploymentID() + getReturnType().getName();
         isDependentAndStateful = getScope().equals(Dependent.class) && BeanType.STATEFUL.equals(beanContext.getComponentType());
+        scopeNeedsPassivation = webBeansContext.getBeanManagerImpl().isPassivatingScope(getScope()) && BeanType.STATEFUL.equals(beanContext.getComponentType());
     }
 
     @Override
@@ -91,6 +93,11 @@ public class CdiEjbBean<T> extends BaseEjbBean<T> implements InterceptedMarker,
         return EjbInjectionTargetImpl.class.cast(getInjectionTarget()).getInterceptorInfo();
     }
 
+    @Override
+    public boolean isPassivationCapable() {
+        return getBeanContext().isPassivable() && scopeNeedsPassivation /* for TCKs mainly */;
+    }
+
     public BeanContext getBeanContext() {
         return this.beanContext;
     }
@@ -423,7 +430,7 @@ public class CdiEjbBean<T> extends BaseEjbBean<T> implements InterceptedMarker,
         }
 
         public T createNewPojo(final CreationalContext<T> creationalContext) {
-            return (T) super.newInstance(CreationalContextImpl.class.cast(creationalContext));
+            return (T) super.produce(CreationalContextImpl.class.cast(creationalContext));
         }
 
         private static boolean isDynamicBean(final Bean<?> bean) {

http://git-wip-us.apache.org/repos/asf/tomee/blob/22029b68/container/openejb-core/src/main/java/org/apache/openejb/cdi/ConstructorInjectionBean.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/cdi/ConstructorInjectionBean.java b/container/openejb-core/src/main/java/org/apache/openejb/cdi/ConstructorInjectionBean.java
index a92fe5e..0ce078d 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/cdi/ConstructorInjectionBean.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/cdi/ConstructorInjectionBean.java
@@ -64,7 +64,7 @@ public class ConstructorInjectionBean<T> extends InjectionTargetBean<T> { // TOD
         if (passivationCapable != null) {
             this.passivationCapable = passivationCapable;
         } else {
-            this.passivationCapable = isPassivationCapable();
+            this.passivationCapable = super.isPassivationCapable();
         }
     }
 

http://git-wip-us.apache.org/repos/asf/tomee/blob/22029b68/tck/cdi-embedded/pom.xml
----------------------------------------------------------------------
diff --git a/tck/cdi-embedded/pom.xml b/tck/cdi-embedded/pom.xml
index a4776d7..91123c2 100644
--- a/tck/cdi-embedded/pom.xml
+++ b/tck/cdi-embedded/pom.xml
@@ -129,7 +129,7 @@
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
         <configuration>
-          <argLine>-Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=512m</argLine>
+          <argLine>-Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled</argLine>
           <useFile>false</useFile>
           <disableXmlReport>true</disableXmlReport>
           <suiteXmlFiles>
@@ -146,6 +146,11 @@
             <queue>new://Resource?type=Queue</queue>
             <topic>new://Resource?type=Topic</topic>
             <jdbc>new://Resource?type=DataSource</jdbc>
+
+            <admin.enabled>false</admin.enabled>
+            <ejbd.enabled>false</ejbd.enabled>
+            <ejbds.enabled>false</ejbds.enabled>
+
             <!-- this is a nice perf optimization to have by default but TCKs play with it -->
             <openejb.cdi.applicationScope.cached>false</openejb.cdi.applicationScope.cached>
             <!-- not supported by the spec -->

http://git-wip-us.apache.org/repos/asf/tomee/blob/22029b68/tck/cdi-embedded/src/test/resources/failing.xml
----------------------------------------------------------------------
diff --git a/tck/cdi-embedded/src/test/resources/failing.xml b/tck/cdi-embedded/src/test/resources/failing.xml
index 07f6081..3f5a642 100644
--- a/tck/cdi-embedded/src/test/resources/failing.xml
+++ b/tck/cdi-embedded/src/test/resources/failing.xml
@@ -18,7 +18,7 @@
 <suite name="CDI TCK" verbose="0">
   <test name="CDI TCK">
     <classes>
-      <class name="org.jboss.cdi.tck.tests.context.passivating.dependency.resource.webservice.WebResourcePassivationCapableDependencyTest"/>
+      <class name="org.jboss.cdi.tck.interceptors.tests.bindings.aroundConstruct.ejb.SessionBeanConstructorInterceptionTest" />
     </classes>
   </test>
 </suite>


[2/2] tomee git commit: with right name it is better

Posted by rm...@apache.org.
with right name it is better


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

Branch: refs/heads/develop
Commit: d57528671b56f21df45fb665c7094d1239fa1e35
Parents: 22029b6
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Fri Dec 19 17:01:12 2014 +0100
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Fri Dec 19 17:01:12 2014 +0100

----------------------------------------------------------------------
 tck/cdi-embedded/pom.xml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/d5752867/tck/cdi-embedded/pom.xml
----------------------------------------------------------------------
diff --git a/tck/cdi-embedded/pom.xml b/tck/cdi-embedded/pom.xml
index 91123c2..1f444bf 100644
--- a/tck/cdi-embedded/pom.xml
+++ b/tck/cdi-embedded/pom.xml
@@ -147,9 +147,9 @@
             <topic>new://Resource?type=Topic</topic>
             <jdbc>new://Resource?type=DataSource</jdbc>
 
-            <admin.enabled>false</admin.enabled>
-            <ejbd.enabled>false</ejbd.enabled>
-            <ejbds.enabled>false</ejbds.enabled>
+            <admin.disabled>true</admin.disabled>
+            <ejbd.disabled>true</ejbd.disabled>
+            <ejbds.disabled>true</ejbds.disabled>
 
             <!-- this is a nice perf optimization to have by default but TCKs play with it -->
             <openejb.cdi.applicationScope.cached>false</openejb.cdi.applicationScope.cached>