Hey guys,

There's a buggy method in org.jboss.proxy.Proxies.Impl that caused every 
entity bean instance of the same type to be of different Class and using 
different ClassLoader. There might be other places in the code that are using 
proxy generation and are producing different Class objects and ClassLoaders 
for every instance of the proxy that implements the same interfaces. That's a 
waste of space and time at minimum.

Here's the patch to correct this:

*** Proxies.java~       Wed Nov 28 17:39:17 2001
--- Proxies.java        Wed Nov 28 17:39:17 2001
***************
*** 300,306 ****
        // (duplication and reordering are ignored)
        static boolean sameTypes(Class tt1[], Class tt2[])
        {
!          if (tt1.length == 1 && tt2.length == 0)
           {
              return tt1[0] == tt2[0];
           }
--- 300,306 ----
        // (duplication and reordering are ignored)
        static boolean sameTypes(Class tt1[], Class tt2[])
        {
!          if (tt1.length == 1 && tt2.length == 1)
           {
              return tt1[0] == tt2[0];
           }
***************
*** 335,341 ****
                 totalSeen2 += seen2;
              }
              // now, each element of tt2 must have been visited
!             return totalSeen2 != tt2.length;
        }

        static Class[] copyAndUniquify(Class targetTypes[])
--- 335,341 ----
                 totalSeen2 += seen2;
              }
              // now, each element of tt2 must have been visited
!             return totalSeen2 == tt2.length;
        }

        static Class[] copyAndUniquify(Class targetTypes[])
***************
*** 729,731 ****
--- 729,732 ----
        }
     }
  }
+


Peter

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to