FYI,

Attached is a small patch which fixes the problem that I found earlier.
(See prior posts from me with the subject:"Handle.getEJBObject()".

This patch fixes the problem where a serialized handle to an stateful session
bean was being used to get back to the remote bean instance.  This call, in
jboss 3.2.3 resulted in an extra reflock on the stateful bean, thus causing a problem
when the container went to passivate the bean ("Unable to passivate blah blah").

Once again, this patch is for jboss 3.2.3.



Regards,
Russ


-- -- Russell Chan, Navaho Networks Inc. 416 542 1590 x108
Index: server/src/main/org/jboss/ejb//StatefulSessionContainer.java
===================================================================
RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/StatefulSessionContainer.java,v
retrieving revision 1.49.2.9
diff -c -r1.49.2.9 StatefulSessionContainer.java
*** server/src/main/org/jboss/ejb//StatefulSessionContainer.java        25 Oct 2003 
15:08:03 -0000      1.49.2.9
--- server/src/main/org/jboss/ejb//StatefulSessionContainer.java        11 Feb 2004 
17:57:52 -0000
***************
*** 613,618 ****
--- 613,619 ----
  
        // Does the session still exist?
        InstanceCache cache = getInstanceCache();
+         log.trace("getEJBObject() - getting lock");
        BeanLock lock = getLockManager().getLock(id);
        lock.sync();
        try
***************
*** 622,627 ****
--- 623,631 ----
        }
        finally
        {
+               //RMC : new - release the lock!!
+               log.trace("getEJBObject() - releasing lock");
+                getLockManager().removeLockRef(id);
           lock.releaseSync();
        }
  

Reply via email to