Matthias, you asked how you can do the ClassLoader printing I suggested. 
It depends on who "you" are.  Axis users can't do it; my suggestion is 
aimed at Axis implementors.  I'm suggesting that Axis (and Tomcat) code 
should be alert for class-loading exceptions&errors and do us all the 
favor of printing details of the relevant ClassLoader.  Actually, determining the 
relevant one is an issue itself: you might want 
the one that loaded the class that's noting a class-loading Throwable, or 
(the current Thread).getContextClassLoader(), or the some other one --- 
it's a function of the places where the problem is arising and is being 
detected.  That issue aside, it's a simple matter of following the chain 
defined by ClassLoader.getParent(), narrowing each one to a URLClassLoader 
if possible, and calling URLClassLoader.getURLs in that case.  I've tried 
this in some other software of mine that explicitly manages ClassLoaders, 
and find it's very revealing and helpful in such situations.

Cheers,
Mike

Reply via email to