[jboss-cvs] JBossAS SVN: r70811 - in projects/ejb3/trunk/core: src/main/java/org/jboss/ejb3/session and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Mar 13 07:58:36 EDT 2008
Author: wolfc
Date: 2008-03-13 07:58:36 -0400 (Thu, 13 Mar 2008)
New Revision: 70811
Modified:
projects/ejb3/trunk/core/build-test.xml
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/session/BaseSessionProxyFactory.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulContainer.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxy.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxyFactory.java
projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/concurrent/unit/ConcurrentUnitTestCase.java
Log:
EJBTHREE-697: assigning id on createProxy (like local)
Modified: projects/ejb3/trunk/core/build-test.xml
===================================================================
--- projects/ejb3/trunk/core/build-test.xml 2008-03-13 11:41:19 UTC (rev 70810)
+++ projects/ejb3/trunk/core/build-test.xml 2008-03-13 11:58:36 UTC (rev 70811)
@@ -3209,20 +3209,6 @@
</jar>
</target>
- <!--target name="concurrent"
- description="Builds all jar files."
- >
-
- <mkdir dir="${build.lib}"/>
-
- <jar jarfile="${build.lib}/concurrent-test.jar">
- <fileset dir="${build.classes}">
- <include name="org/jboss/ejb3/test/concurrent/**/*.class"/>
- <include name="org/jboss/ejb3/test/concurrent/unit/*.class"/>
- </fileset>
- </jar>
- </target-->
-
<target name="descriptortypo"
description="Builds all jar files."
>
@@ -4147,6 +4133,7 @@
</target>
<target name="jars" depends="statefulproxyfactoryoverride, mdbsessionpoolclear, removedislocal, statelesscreation, defaultremotebindings, localfromremote, clusteredjms, entityoptimisticlocking, concurrentnaming, propertyreplacement, persistenceunits, appclient, tck5sec, invalidtxmdb, descriptortypo, libdeployment, homeinterface, arjuna, mdbtransactions, unauthenticatedprincipal, clusteredservice, invoker, classloader,
+ concurrent,
circulardependency, jsp, timerdependency, servicedependency, servlet, stateless14, webservices, ear, ejbthree440,
ejbthree454, ejbthree471,
ejbthree653, ejbthree670, ejbthree712, ejbthree724, ejbthree751,
@@ -4917,9 +4904,9 @@
<antcall target="test" inheritRefs="true">
<param name="test" value="descriptortypo"/>
</antcall>
- <!--antcall target="test" inheritRefs="true">
+ <antcall target="test" inheritRefs="true">
<param name="test" value="concurrent"/>
- </antcall-->
+ </antcall>
<!--antcall target="test" inheritRefs="true">
<param name="test" value="seam"/>
</antcall-->
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/session/BaseSessionProxyFactory.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/session/BaseSessionProxyFactory.java 2008-03-13 11:41:19 UTC (rev 70810)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/session/BaseSessionProxyFactory.java 2008-03-13 11:58:36 UTC (rev 70811)
@@ -37,9 +37,8 @@
import javax.ejb.Remote;
import javax.ejb.RemoteHome;
-import org.jboss.ejb3.Container;
-import org.jboss.ejb3.Ejb3Registry;
import org.jboss.ejb3.EJBContainer;
+import org.jboss.ejb3.Ejb3Registry;
import org.jboss.ejb3.ProxyFactory;
import org.jboss.ejb3.ProxyFactoryHelper;
import org.jboss.ejb3.annotation.RemoteBinding;
@@ -58,7 +57,7 @@
@SuppressWarnings("unused")
private static final Logger log = Logger.getLogger(BaseSessionProxyFactory.class);
- private EJBContainer container;
+ private SessionContainer container;
protected String containerGuid;
protected String containerClusterUid;
protected boolean isClustered = false;
@@ -79,22 +78,22 @@
throw new RuntimeException("NYI");
}
- protected void setContainer(Container container)
+ protected void setContainer(SessionContainer container)
{
- this.container = (EJBContainer)container;
+ this.container = container;
this.containerGuid = Ejb3Registry.guid(container);
this.containerClusterUid = Ejb3Registry.clusterUid(container);
this.isClustered = container.isClustered();
}
- protected EJBContainer getContainer()
+ protected SessionContainer getContainer()
{
if (container == null)
{
- container = (EJBContainer)Ejb3Registry.findContainer(containerGuid);
+ container = (SessionContainer)Ejb3Registry.findContainer(containerGuid);
if (container == null && isClustered)
- container = (EJBContainer)Ejb3Registry.getClusterContainer(containerClusterUid);
+ container = (SessionContainer)Ejb3Registry.getClusterContainer(containerClusterUid);
}
return container;
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulContainer.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulContainer.java 2008-03-13 11:41:19 UTC (rev 70810)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulContainer.java 2008-03-13 11:58:36 UTC (rev 70811)
@@ -302,7 +302,7 @@
Thread.currentThread().setContextClassLoader(classloader);
StatefulBeanContext ctx = getCache().create(initTypes, initValues);
// Since we return the key here, the context is not in use.
- ctx.setInUse(false);
+ getCache().release(ctx);
return ctx.getId();
}
finally
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxy.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxy.java 2008-03-13 11:41:19 UTC (rev 70810)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxy.java 2008-03-13 11:58:36 UTC (rev 70811)
@@ -23,9 +23,11 @@
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
+
import javax.ejb.EJBMetaData;
import javax.ejb.Handle;
import javax.ejb.HomeHandle;
+
import org.jboss.aop.Dispatcher;
import org.jboss.aop.advice.Interceptor;
import org.jboss.aop.util.MethodHashing;
@@ -34,7 +36,6 @@
import org.jboss.aspects.asynch.AsynchProvider;
import org.jboss.aspects.remoting.InvokeRemoteInterceptor;
import org.jboss.ejb3.Container;
-import org.jboss.ejb3.Ejb3Registry;
import org.jboss.ejb3.ProxyUtils;
import org.jboss.ejb3.asynchronous.AsynchronousInterceptor;
import org.jboss.ejb3.remoting.IsLocalInterceptor;
@@ -61,12 +62,6 @@
private HomeHandle homeHandle;
private EJBMetaData ejbMetaData;
- public StatefulRemoteProxy(Container container, Interceptor[] interceptors, InvokerLocator uri)
- {
- super(container, interceptors);
- this.uri = uri;
- }
-
public StatefulRemoteProxy(Container container, Interceptor[] interceptors, InvokerLocator uri, Object id)
{
super(container, interceptors);
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxyFactory.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxyFactory.java 2008-03-13 11:41:19 UTC (rev 70810)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulRemoteProxyFactory.java 2008-03-13 11:58:36 UTC (rev 70811)
@@ -189,17 +189,8 @@
public Object createProxy()
{
- String stackName = "StatefulSessionClientInterceptors";
- if (binding.interceptorStack() != null && !binding.interceptorStack().equals(""))
- {
- stackName = binding.interceptorStack();
- }
- AdviceStack stack = AspectManager.instance().getAdviceStack(stackName);
- if (stack == null) throw new RuntimeException("unable to find interceptor stack: " + stackName);
- StatefulRemoteProxy proxy = new StatefulRemoteProxy(getContainer(), stack.createInterceptors(getContainer().getAdvisor(), null), locator);
-
- setEjb21Objects(proxy);
- return constructProxy(proxy);
+ Object id = getContainer().createSession();
+ return createProxy(id);
}
protected StatefulHandleImpl getHandle()
@@ -218,6 +209,7 @@
stackName = binding.interceptorStack();
}
AdviceStack stack = AspectManager.instance().getAdviceStack(stackName);
+ if (stack == null) throw new RuntimeException("unable to find interceptor stack: " + stackName);
StatefulRemoteProxy proxy = new StatefulRemoteProxy(getContainer(), stack.createInterceptors(getContainer().getAdvisor(), null), locator, id);
setEjb21Objects(proxy);
Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/concurrent/unit/ConcurrentUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/concurrent/unit/ConcurrentUnitTestCase.java 2008-03-13 11:41:19 UTC (rev 70810)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/concurrent/unit/ConcurrentUnitTestCase.java 2008-03-13 11:58:36 UTC (rev 70811)
@@ -126,7 +126,7 @@
Throwable t = eh.getUncaughtException();
assertNotNull("No exception occured during a concurrent call", t);
- fail("never comes here");
+ assertTrue("Expected a javax.ejb.ConcurrentAccessException", t instanceof ConcurrentAccessException);
}
public static Test suite() throws Exception
More information about the jboss-cvs-commits
mailing list