cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Laurent Medioni" <>
Subject Cocoon 2.1.11- Avalon issue using IBM java 6 jvm
Date Mon, 15 Jun 2009 13:40:59 GMT
On a Websphere 7 server we noticed in the logs many occurrences of:
"WARN ... [core.manager] ... WebContainer : 4/ExcaliburComponentSelector: Attempted to release
a $Proxy32 but its handler could not be located."

We have been able to debug the case: ExcaliburComponentSelector is not able to find back a
Component proxy in the Component mapping map, and after some investigations the culprit is...
the "new" IBM implementation of HashMap.get.

The java 4 IBM jvm does (like the Sun or BEA ones), to compare keys, ((x == y) || (x.equals(y))),
== is OK for the proxy, so it works.
The java 6 one skips the == test and ends up directly calling .equals on the proxy, which
correctly relays to the proxified item, but still passing a proxy in parameter to the equals,
so NOK.

This, at least, leads to leaks in the components maps (components are never released then
recreated, ...), and whatever else we have not noticed yet...

We posted this issue to IBM and are waiting for an answer:

This issue does not appear when running a Sun or BEA jvm (java 4 or 6) or an IBM java 4 jvm.

Just wanted to let you know...



 This email and any files transmitted with it are CONFIDENTIAL and intended
  solely for the use of the individual or entity to which they are addressed.
 Any unauthorized copying, disclosure, or distribution of the material within
  this email is strictly forbidden.
 Any views or opinions presented within this e-mail are solely those of the
  author and do not necessarily represent those of Odyssey Financial
Technologies SA unless otherwise specifically stated.
 An electronic message is not binding on its sender. Any message referring to
  a binding engagement must be confirmed in writing and duly signed.
 If you have received this email in error, please notify the sender immediately
  and delete the original.
View raw message