In short - the problem is that axis uses context class loader - and bacause JVM caches classes in native code the context class loader can load classes for a bundle that normally are not visible for this bundle.
Example: 2 plugins - plugin A and plugin B each of them contains axis.jar in it's PRIVATE classpath Now - plugin A uses axis and as result it loads some axis classes using the context class loader. Later - plugin B uses it's axis and as result it loads some axis classes using the context class loader. Problem - some of the classes loaded by plugin B are in fact classes from plugin A classpath. Result exceptions like: org.apache.axis.attachments.AttachmentsImpl cannot be cast to org.apache.axis.attachments.Attachments (because classloaders are different - normally it's a perfectly valid cast) My question is : how hard would be to change: Class.forName(...,contextClassLoader) to contextClassLoader.loadClass() according to: http://blog.bjhargrave.com/2007/09/classforname-caches-defined-class-in.html that would help to avoid JVM caching. For more about this problem please see: https://bugs.eclipse.org/bugs/show_bug.cgi?id=127963 https://bugs.eclipse.org/bugs/show_bug.cgi?id=197819 Anyone familiar with axis ClassUtils - pleas comment on this. This applies to axis 1.3 and 1.4 (only tried these so may apply to more versions) Maciek -- View this message in context: http://www.nabble.com/org.apache.axis.utils.ClassUtils---causing-problems-in-eclipse-framework-tf4769310.html#a13642060 Sent from the Axis - Dev mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
