Im not sure if this has been documented somewhere else but thought I’d bring it up anyway.
When migrating my webapp from weblogic 9.2 to geronimo (yay) I encountered an issue with the classloader—cglib in my webapp (required by hibernate) is conflicting with geronimos version and I get just blank screens for ALL mapped urls, without any explanation in the logs at all (last message is Servlet initialized).
After much foundering in the dark, I was able to use the <inverse-classloading/> option to get geronimo to throw a proper CCE:
root cause looks like:
Caused by: java.lang.ClassCastException: net.sf.cglib.proxy.Enhancer$EnhancerKey$$KeyFactoryByCGLIB$$7fb24d72
From which I was able to guess that it is a cglib issue. Removing cglib-2.1.3.jar from my libs fixes the issue and the servlet (springmvc dispatcher) begins to behave correctly.
Looking in the geronimo/repository dir, I find that the container’s version of cglib is also 2.1.3 (nodeps), which is bizarre (unless the nodeps version is somehow different to the one hibernate packages?)
Any ideas? And how can I get around this issue—there should be some kind of deployment isolation I can turn on?
Thanks a bunch!!
Dhanji R. Prasanna
|This correspondence is for the named persons only. |
It may contain confidential or privileged information or both.
No confidentiality or privilege is waived or lost by any mis transmission.
If you receive this correspondence in error please delete it from your system immediately and notify the sender.
You must not disclose, copy or relay on any part of this correspondence, if you are not the intended recipient.
Any opinions expressed in this message are those of the individual sender except where the sender expressly,
and with the authority, states them to be the opinions of the Department of Emergency Services, Queensland.