What I mean, is should SessionBasedClusteredSession.writeExternal + 
SessionBasedClusteredSession.readExternal instead synchronize on getSession(), 
which should be the same StandardSessionFacade as RichFaces is synchronizing on.

I haven't recreated the bug yet.  I could either recreate it or you could try 
the following SessionBasedClusteredSession change (two line change to 
synchronize on common session facade) :

   public void readExternal(ObjectInput in) throws IOException, 
ClassNotFoundException
  |    {
  |       synchronized (getSession())  // change 1 of 2
  |       {
  |          // Let superclass read in everything but the attribute map
  |          super.readExternal(in);
  |       
  |          attributes = (Map) in.readObject();      
  |       }
  |    }
  | 
  |    public void writeExternal(ObjectOutput out) throws IOException
  |    {
  |       synchronized (getSession)  // change 2 of 2
  |       {
  |          // Let superclass write out everything but the attribute map
  |          super.writeExternal(out);
  |          
  |          // Don't replicate any excluded attributes
  |          Map excluded = removeExcludedAttributes(attributes);
  |         
  |          out.writeObject(attributes);
  |         
  |          // Restore any excluded attributes
  |          if (excluded != null)
  |             attributes.putAll(excluded);
  |       }   
  |    
  |    }
  | 


View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4239792#4239792

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4239792
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to