[jboss-cvs] JBossAS SVN: r60553 - trunk/connector/src/main/org/jboss/resource/adapter/jms/inflow.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Feb 14 16:49:21 EST 2007


Author: weston.price at jboss.com
Date: 2007-02-14 16:49:20 -0500 (Wed, 14 Feb 2007)
New Revision: 60553

Modified:
   trunk/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java
Log:
[JBAS-3972]Fixed incorrect synchronization handling of server sessions
as well as using the correct cloned session list in startup code.

Modified: trunk/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java	2007-02-14 21:48:16 UTC (rev 60552)
+++ trunk/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java	2007-02-14 21:49:20 UTC (rev 60553)
@@ -176,7 +176,8 @@
    protected void setupSessions() throws Exception
    {
       JmsActivationSpec spec = activation.getActivationSpec();
-
+      ArrayList clonedSessions = null;
+      
       // Create the sessions
       synchronized (serverSessions)
       {
@@ -186,13 +187,14 @@
             serverSessions.add(session);
          }
          sessionCount = serverSessions.size();
+         clonedSessions = (ArrayList) serverSessions.clone();
+
       }
       
       // Start the sessions
-      ArrayList clonedSessions = (ArrayList) serverSessions.clone();
       for (int i = 0; i < clonedSessions.size(); ++ i)
       {
-         JmsServerSession session = (JmsServerSession) serverSessions.get(i);
+         JmsServerSession session = (JmsServerSession) clonedSessions.get(i);
          session.setup();
       }
    }




More information about the jboss-cvs-commits mailing list