[jboss-cvs] JBossAS SVN: r69946 - in projects/ejb3/trunk/core/src: main/java/org/jboss/ejb3/stateless and 3 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Feb 19 14:08:09 EST 2008


Author: bdecoste
Date: 2008-02-19 14:08:09 -0500 (Tue, 19 Feb 2008)
New Revision: 69946

Added:
   projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulBean.java
   projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulRemote.java
Modified:
   projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulClusterProxyFactory.java
   projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateless/StatelessClusterProxyFactory.java
   projects/ejb3/trunk/core/src/main/resources/META-INF/ejb3-deployers-beans.xml
   projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/unit/StatelessTestCase.java
Log:
fixed loadBalancePolicy as String not Class

Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulClusterProxyFactory.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulClusterProxyFactory.java	2008-02-19 18:48:07 UTC (rev 69945)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateful/StatefulClusterProxyFactory.java	2008-02-19 19:08:09 UTC (rev 69946)
@@ -37,7 +37,9 @@
 import org.jboss.ejb3.ProxyFactoryHelper;
 import org.jboss.ejb3.annotation.Clustered;
 import org.jboss.ejb3.annotation.RemoteBinding;
+import org.jboss.ejb3.remoting.LoadBalancePolicyNotRegisteredException;
 import org.jboss.ejb3.remoting.RemoteProxyFactory;
+import org.jboss.ejb3.remoting.RemoteProxyFactoryRegistry;
 import org.jboss.ejb3.session.SessionContainer;
 import org.jboss.ha.client.loadbalance.FirstAvailable;
 import org.jboss.ha.client.loadbalance.LoadBalancePolicy;
@@ -102,14 +104,25 @@
       HAPartition partition = (HAPartition) getContainer().getInitialContext().lookup("/HAPartition/" + partitionName);
       hatarget = new HATarget(partition, proxyFamilyName, locator, HATarget.ENABLE_INVOCATIONS);
       ClusteringTargetsRepository.initTarget(proxyFamilyName, hatarget.getReplicants());
-      ((SessionContainer) getContainer()).getClusterFamilies().put(proxyFamilyName, hatarget);
+      SessionContainer container = (SessionContainer) getContainer();
+      container.getClusterFamilies().put(proxyFamilyName, hatarget);
+      
       if (clustered.loadBalancePolicy() == null || clustered.loadBalancePolicy().equals(LoadBalancePolicy.class))
       {
          lbPolicy = new FirstAvailable();
       }
       else
       {
-         lbPolicy = (LoadBalancePolicy)Thread.currentThread().getContextClassLoader().loadClass(clustered.loadBalancePolicy())
+         String policyClass = clustered.loadBalancePolicy();
+         try
+         {
+            RemoteProxyFactoryRegistry registry = container.getDeployment().getRemoteProxyFactoryRegistry();
+            Class<LoadBalancePolicy> policy = registry.getLoadBalancePolicy(policyClass);
+            policyClass = policy.getName();
+         }
+         catch (LoadBalancePolicyNotRegisteredException e){}
+         
+         lbPolicy = (LoadBalancePolicy)Thread.currentThread().getContextClassLoader().loadClass(policyClass)
                .newInstance();
       }
       wrapper = new FamilyWrapper(proxyFamilyName, hatarget.getReplicants());

Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateless/StatelessClusterProxyFactory.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateless/StatelessClusterProxyFactory.java	2008-02-19 18:48:07 UTC (rev 69945)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/stateless/StatelessClusterProxyFactory.java	2008-02-19 19:08:09 UTC (rev 69946)
@@ -32,7 +32,9 @@
 import org.jboss.ejb3.ProxyFactoryHelper;
 import org.jboss.ejb3.annotation.Clustered;
 import org.jboss.ejb3.annotation.RemoteBinding;
+import org.jboss.ejb3.remoting.LoadBalancePolicyNotRegisteredException;
 import org.jboss.ejb3.remoting.RemoteProxyFactory;
+import org.jboss.ejb3.remoting.RemoteProxyFactoryRegistry;
 import org.jboss.ejb3.session.SessionContainer;
 import org.jboss.ha.client.loadbalance.LoadBalancePolicy;
 import org.jboss.ha.client.loadbalance.RandomRobin;
@@ -93,15 +95,27 @@
       HAPartition partition = (HAPartition) getContainer().getInitialContext().lookup("/HAPartition/" + partitionName);
       hatarget = new HATarget(partition, proxyFamilyName, locator, HATarget.ENABLE_INVOCATIONS);
       ClusteringTargetsRepository.initTarget(proxyFamilyName, hatarget.getReplicants());
-      ((StatelessContainer) getContainer()).getClusterFamilies().put(proxyFamilyName, hatarget);
+      StatelessContainer container = (StatelessContainer) getContainer();
+      
+      container.getClusterFamilies().put(proxyFamilyName, hatarget);
+      
       if (clustered.loadBalancePolicy() == null || clustered.loadBalancePolicy().equals(LoadBalancePolicy.class))
       {
          lbPolicy = new RandomRobin();
       }
       else
       {
-         lbPolicy = (LoadBalancePolicy) Thread.currentThread().getContextClassLoader().loadClass(
-               clustered.loadBalancePolicy()).newInstance();
+         String policyClass = clustered.loadBalancePolicy();
+         try
+         {
+            RemoteProxyFactoryRegistry registry = container.getDeployment().getRemoteProxyFactoryRegistry();
+            Class<LoadBalancePolicy> policy = registry.getLoadBalancePolicy(policyClass);
+            policyClass = policy.getName();
+         }
+         catch (LoadBalancePolicyNotRegisteredException e){}
+         
+         lbPolicy = (LoadBalancePolicy)Thread.currentThread().getContextClassLoader().loadClass(policyClass)
+               .newInstance();
       }
       wrapper = new FamilyWrapper(proxyFamilyName, hatarget.getReplicants());
       

Modified: projects/ejb3/trunk/core/src/main/resources/META-INF/ejb3-deployers-beans.xml
===================================================================
--- projects/ejb3/trunk/core/src/main/resources/META-INF/ejb3-deployers-beans.xml	2008-02-19 18:48:07 UTC (rev 69945)
+++ projects/ejb3/trunk/core/src/main/resources/META-INF/ejb3-deployers-beans.xml	2008-02-19 19:08:09 UTC (rev 69946)
@@ -13,25 +13,25 @@
       <property name="type">ejb3x</property>
       <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
       <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
-      <property name="defaultPersistenceProperties"><inject bean="DefaultPersistenceProperties" property="properties"/></property>
-      <property name="cacheFactoryRegistry"><inject bean="EJB3CacheFactoryRegistry" /></property>
-      <property name="poolFactoryRegistry"><inject bean="EJB3PoolFactoryRegistry" /></property>
-      <property name="remoteProxyFactoryRegistry"><inject bean="EJB3RemoteProxyFactoryRegistry" /></property>
-      <property name="persistenceManagerFactoryRegistry"><inject bean="EJB3PersistenceManagerFactoryRegistry" /></property>
-      
-      <!-- 
-   
-      Configure the deployer to optionally require a deployment 
-      descriptor for deployable units.  By turning this switch to "true", 
-      "META-INF/jboss.xml" or the EJB3 Deployment Descriptor "META-INF/ejb-jar.xml" 
-      will be required for deployment, enabling a performance increace in deployment by
-      not scanning for annotations in non-deployable EJB3 JARs.
-      
-      Default for this value is "false".
-      
-      -->
-      <property name="deploymentDescriptorRequired">false</property>
+      <property name="defaultPersistenceProperties"><inject bean="DefaultPersistenceProperties" property="properties"/></property>
+      <property name="cacheFactoryRegistry"><inject bean="EJB3CacheFactoryRegistry" /></property>
+      <property name="poolFactoryRegistry"><inject bean="EJB3PoolFactoryRegistry" /></property>
+      <property name="remoteProxyFactoryRegistry"><inject bean="EJB3RemoteProxyFactoryRegistry" /></property>
+      <property name="persistenceManagerFactoryRegistry"><inject bean="EJB3PersistenceManagerFactoryRegistry" /></property>
       
+      <!-- 
+   
+      Configure the deployer to optionally require a deployment 
+      descriptor for deployable units.  By turning this switch to "true", 
+      "META-INF/jboss.xml" or the EJB3 Deployment Descriptor "META-INF/ejb-jar.xml" 
+      will be required for deployment, enabling a performance increace in deployment by
+      not scanning for annotations in non-deployable EJB3 JARs.
+      
+      Default for this value is "false".
+      
+      -->
+      <property name="deploymentDescriptorRequired">false</property>
+      
       <property name="ignoredJarsSet">
          <set elementClass="java.lang.String">
             <value>snmp-adaptor.jar</value>
@@ -142,118 +142,139 @@
       <!-- TODO: check depends -->
       <depends>AspectLibrary</depends>
       <depends>AppClientScanningDeployer</depends>
-   </bean>
-   
-   <!-- EJB3 Cache Factory Registry -->
-   <bean name="EJB3CacheFactoryRegistry" class="org.jboss.ejb3.cache.CacheFactoryRegistry">
-      <property name="factories">
-         <!-- Define each of the registered factories -->
-         <map class="java.util.HashMap" keyClass="java.lang.String"
-            valueClass="java.lang.Class">
-            <!-- NoPassivationCache -->
-            <entry>
-               <key>NoPassivationCache</key>
-               <value>org.jboss.ejb3.cache.NoPassivationCacheFactory</value>
-            </entry>
-            <!-- SimpleStatefulCache -->
-            <entry>
-               <key>SimpleStatefulCache</key>
-               <value>org.jboss.ejb3.cache.simple.SimpleStatefulCacheFactory</value>
-            </entry>
-            <!-- StatefulTreeCache -->
-            <entry>
-               <key>StatefulTreeCache</key>
-               <value>org.jboss.ejb3.cache.tree.StatefulTreeCacheFactory</value>
-            </entry>
-         </map>
-      </property>
-   </bean>
-   
-   <!-- EJB3 Pool Factory Registry -->
-   <bean name="EJB3PoolFactoryRegistry" class="org.jboss.ejb3.pool.PoolFactoryRegistry">
-      <property name="factories">
-         <!-- Define each of the registered factories -->
-         <map class="java.util.HashMap" keyClass="java.lang.String"
-            valueClass="java.lang.Class">
-            <!-- ThreadlocalPool -->
-            <entry>
-               <key>ThreadlocalPool</key>
-               <value>org.jboss.ejb3.pool.ThreadlocalPoolFactory</value>
-            </entry>
-            <!-- StrictMaxPool -->
-            <entry>
-               <key>StrictMaxPool</key>
-               <value>org.jboss.ejb3.pool.StrictMaxPoolFactory</value>
-            </entry>
-         </map>
-      </property>
    </bean>
-   
-   <!-- Remoting Proxy Factory Registry -->
-   <bean name="EJB3RemoteProxyFactoryRegistry" class="org.jboss.ejb3.remoting.RemoteProxyFactoryRegistry">
-      <property name="factories">
-         <!-- Define each of the registered factories -->
-         <map class="java.util.HashMap" keyClass="java.lang.String"
-            valueClass="java.lang.Class">
-            <!-- RemoteProxyFactory -->
-            <entry>
-               <key>RemoteProxyFactory</key>
-               <value>org.jboss.ejb3.remoting.RemoteProxyFactory</value>
-            </entry>
-            <!-- IORFactory -->
-            <entry>
-               <key>IORFactory</key>
-               <value>org.jboss.ejb3.iiop.IORFactory</value>
-            </entry>
-            <!-- ServiceRemoteProxyFactory -->
-            <entry>
-               <key>ServiceRemoteProxyFactory</key>
-               <value>org.jboss.ejb3.service.ServiceRemoteProxyFactory</value>
-            </entry>
-            <!-- StatefulClusterProxyFactory -->
-            <entry>
-               <key>StatefulClusterProxyFactory</key>
-               <value>org.jboss.ejb3.stateful.StatefulClusterProxyFactory</value>
-            </entry>
-            <!-- StatefulRemoteProxyFactory -->
-            <entry>
-               <key>StatefulRemoteProxyFactory</key>
-               <value>org.jboss.ejb3.stateful.StatefulRemoteProxyFactory</value>
-            </entry>
-            <!-- StatelessClusterProxyFactory -->
-            <entry>
-               <key>StatelessClusterProxyFactory</key>
-               <value>org.jboss.ejb3.stateless.StatelessClusterProxyFactory</value>
-            </entry>
-            <!-- StatelessRemoteProxyFactory -->
-            <entry>
-               <key>StatelessRemoteProxyFactory</key>
-               <value>org.jboss.ejb3.stateless.StatelessRemoteProxyFactory</value>
-            </entry>            
-         </map>
-      </property>
-   </bean>
-   
-   <!-- EJB3 Persistence Manager Factory Registry -->
-   <bean name="EJB3PersistenceManagerFactoryRegistry" class="org.jboss.ejb3.cache.persistence.PersistenceManagerFactoryRegistry">
-      <property name="factories">
-         <!-- Define each of the registered factories -->
-         <map class="java.util.HashMap" keyClass="java.lang.String"
-            valueClass="java.lang.Class">
-            <!-- StatefulSessionFilePersistenceManager -->
-            <entry>
-               <key>StatefulSessionFilePersistenceManager</key>
-               <value>org.jboss.ejb3.cache.simple.StatefulSessionFilePersistenceManagerFactory</value>
-            </entry>
-         </map>
-      </property>
-   </bean>
    
-   <bean name="JNDIKernelRegistryPlugin" class="org.jboss.ejb3.kernel.JNDIKernelRegistryPlugin"/>
-   
+   <!-- EJB3 Cache Factory Registry -->
+   <bean name="EJB3CacheFactoryRegistry" class="org.jboss.ejb3.cache.CacheFactoryRegistry">
+      <property name="factories">
+         <!-- Define each of the registered factories -->
+         <map class="java.util.HashMap" keyClass="java.lang.String"
+            valueClass="java.lang.Class">
+            <!-- NoPassivationCache -->
+            <entry>
+               <key>NoPassivationCache</key>
+               <value>org.jboss.ejb3.cache.NoPassivationCacheFactory</value>
+            </entry>
+            <!-- SimpleStatefulCache -->
+            <entry>
+               <key>SimpleStatefulCache</key>
+               <value>org.jboss.ejb3.cache.simple.SimpleStatefulCacheFactory</value>
+            </entry>
+            <!-- StatefulTreeCache -->
+            <entry>
+               <key>StatefulTreeCache</key>
+               <value>org.jboss.ejb3.cache.tree.StatefulTreeCacheFactory</value>
+            </entry>
+         </map>
+      </property>
+   </bean>
+   
+   <!-- EJB3 Pool Factory Registry -->
+   <bean name="EJB3PoolFactoryRegistry" class="org.jboss.ejb3.pool.PoolFactoryRegistry">
+      <property name="factories">
+         <!-- Define each of the registered factories -->
+         <map class="java.util.HashMap" keyClass="java.lang.String"
+            valueClass="java.lang.Class">
+            <!-- ThreadlocalPool -->
+            <entry>
+               <key>ThreadlocalPool</key>
+               <value>org.jboss.ejb3.pool.ThreadlocalPoolFactory</value>
+            </entry>
+            <!-- StrictMaxPool -->
+            <entry>
+               <key>StrictMaxPool</key>
+               <value>org.jboss.ejb3.pool.StrictMaxPoolFactory</value>
+            </entry>
+         </map>
+      </property>
+   </bean>
+   
+   <!-- Remoting Proxy Factory Registry -->
+   <bean name="EJB3RemoteProxyFactoryRegistry" class="org.jboss.ejb3.remoting.RemoteProxyFactoryRegistry">
+      <property name="factories">
+         <!-- Define each of the registered factories -->
+         <map class="java.util.HashMap" keyClass="java.lang.String"
+            valueClass="java.lang.Class">
+            <!-- RemoteProxyFactory -->
+            <entry>
+               <key>RemoteProxyFactory</key>
+               <value>org.jboss.ejb3.remoting.RemoteProxyFactory</value>
+            </entry>
+            <!-- IORFactory -->
+            <entry>
+               <key>IORFactory</key>
+               <value>org.jboss.ejb3.iiop.IORFactory</value>
+            </entry>
+            <!-- ServiceRemoteProxyFactory -->
+            <entry>
+               <key>ServiceRemoteProxyFactory</key>
+               <value>org.jboss.ejb3.service.ServiceRemoteProxyFactory</value>
+            </entry>
+            <!-- StatefulClusterProxyFactory -->
+            <entry>
+               <key>StatefulClusterProxyFactory</key>
+               <value>org.jboss.ejb3.stateful.StatefulClusterProxyFactory</value>
+            </entry>
+            <!-- StatefulRemoteProxyFactory -->
+            <entry>
+               <key>StatefulRemoteProxyFactory</key>
+               <value>org.jboss.ejb3.stateful.StatefulRemoteProxyFactory</value>
+            </entry>
+            <!-- StatelessClusterProxyFactory -->
+            <entry>
+               <key>StatelessClusterProxyFactory</key>
+               <value>org.jboss.ejb3.stateless.StatelessClusterProxyFactory</value>
+            </entry>
+            <!-- StatelessRemoteProxyFactory -->
+            <entry>
+               <key>StatelessRemoteProxyFactory</key>
+               <value>org.jboss.ejb3.stateless.StatelessRemoteProxyFactory</value>
+            </entry>            
+         </map>
+      </property>
+      <property name="loadBalancePolicies">
+         <!-- Define each of the registered factories -->
+         <map class="java.util.HashMap" keyClass="java.lang.String"
+            valueClass="java.lang.Class">
+            <!-- RoundRobin -->
+            <entry>
+               <key>RoundRobin</key>
+               <value>org.jboss.ha.client.loadbalance.RoundRobin</value>
+            </entry>
+            <!-- RandomRobin -->
+            <entry>
+               <key>RandomRobin</key>
+               <value>org.jboss.ha.client.loadbalance.RandomRobin</value>
+            </entry>
+            <!-- FirstAvailable -->
+            <entry>
+               <key>FirstAvailable</key>
+               <value>org.jboss.ha.client.loadbalance.FirstAvailable</value>
+            </entry>
+         </map>
+      </property>
+   </bean>
+   
+   <!-- EJB3 Persistence Manager Factory Registry -->
+   <bean name="EJB3PersistenceManagerFactoryRegistry" class="org.jboss.ejb3.cache.persistence.PersistenceManagerFactoryRegistry">
+      <property name="factories">
+         <!-- Define each of the registered factories -->
+         <map class="java.util.HashMap" keyClass="java.lang.String"
+            valueClass="java.lang.Class">
+            <!-- StatefulSessionFilePersistenceManager -->
+            <entry>
+               <key>StatefulSessionFilePersistenceManager</key>
+               <value>org.jboss.ejb3.cache.simple.StatefulSessionFilePersistenceManagerFactory</value>
+            </entry>
+         </map>
+      </property>
+   </bean>
+   
+   <bean name="JNDIKernelRegistryPlugin" class="org.jboss.ejb3.kernel.JNDIKernelRegistryPlugin"/>
+   
    <!-- Persistence Unit deployers -->
-   <bean name="PersistenceUnitParsingDeployer" class="org.jboss.ejb3.deployers.PersistenceUnitParsingDeployer">
-      <property name="type">car</property>
-   </bean>
-   
+   <bean name="PersistenceUnitParsingDeployer" class="org.jboss.ejb3.deployers.PersistenceUnitParsingDeployer">
+      <property name="type">car</property>
+   </bean>
+   
 </deployment>

Added: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulBean.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulBean.java	                        (rev 0)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulBean.java	2008-02-19 19:08:09 UTC (rev 69946)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.ejb3.test.ejbthree1092;
+
+import javax.ejb.Remote;
+import javax.ejb.Stateful;
+
+import org.jboss.ejb3.annotation.Clustered;
+import org.jboss.logging.Logger;
+
+/**
+ * @author <a href="mailto:bdecoste at jboss.com">William DeCoste</a>
+ */
+ at Stateful
+ at Remote(StatefulRemote.class)
+ at Clustered(loadBalancePolicy = "org.jboss.ha.client.loadbalance.RandomRobin")
+public class StatefulBean implements StatelessRemote
+{
+   private static final Logger log = Logger.getLogger(StatefulBean.class);
+   
+   public void test(int count)
+   {
+      log.info("****************** test " + count);
+   }
+}

Added: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulRemote.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulRemote.java	                        (rev 0)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/StatefulRemote.java	2008-02-19 19:08:09 UTC (rev 69946)
@@ -0,0 +1,30 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.ejb3.test.ejbthree1092;
+
+/**
+ * @author <a href="mailto:bdecoste at jboss.com">William DeCoste</a>
+ */
+public interface StatefulRemote
+{
+   void test(int count);
+}

Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/unit/StatelessTestCase.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/unit/StatelessTestCase.java	2008-02-19 18:48:07 UTC (rev 69945)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/ejbthree1092/unit/StatelessTestCase.java	2008-02-19 19:08:09 UTC (rev 69946)
@@ -22,6 +22,7 @@
 package org.jboss.ejb3.test.ejbthree1092.unit;
 
 import org.jboss.ejb3.test.ejbthree1092.StatelessRemote;
+import org.jboss.ejb3.test.ejbthree1092.StatefulRemote;
 
 import org.jboss.logging.Logger;
 import org.jboss.test.JBossTestCase;
@@ -39,7 +40,7 @@
       super(name);
    }
  
-   public void testLoadBalanceOverride() throws Exception
+   public void testStatelessLoadBalanceOverride() throws Exception
    {
       StatelessRemote stateless = (StatelessRemote) getInitialContext().lookup("StatelessBean/remote");
       assertNotNull(stateless);
@@ -50,6 +51,18 @@
          Thread.sleep(500);
       }
    }
+   
+   public void testStatefulLoadBalanceOverride() throws Exception
+   {
+      StatefulRemote stateful = (StatefulRemote) getInitialContext().lookup("StatefulBean/remote");
+      assertNotNull(stateful);
+      
+      for(int i = 0 ; i < 20 ; ++i)
+      {
+         stateful.test(i);
+         Thread.sleep(500);
+      }
+   }
 
    public static Test suite() throws Exception
    {




More information about the jboss-cvs-commits mailing list