Brian Jones wrote:
Looking at the stacktrace you provided, I'm not convinced that this is a reflection issue at it's root. First off, we can disregard the fact that it happens when reading java.lang.reflect - that's irrelevant to what it's actually doing to read the classes, of course.It's not a new problem, but I was able to ignore it before. Now japize stops dead in its tracks. Because I know Classpath has this $ClassFactory and JDK 1.4 does not... Jode must be reading something in Classpath's .class files referencing this and trying to use reflection to load it which fails under the JDK. Again I used to see this (and I ignored it) but it didn't cause japize to die as it does now.
The stack traces refer to java.io.UTFDataFormatException - that sounds like a classfile format problem because I know that the classfile format contains a lot of UTF-formatted data. Does this continue to happen if you compile Classpath (or even just java.lang.reflect.Proxy) with a different Java compiler?
(I have no idea whether this is Jode misinterpreting perfectly valid information, or the compiler emitting an invalid classfile).
I suspect that what's happening is that due to this UTFDataFormatException in the classfile, Jode is falling back to trying to read the class another way, and the only other way it has is Reflection. When Japize asks the class whether it's deprecated, then, it has no way to find out, because reflection doesn't carry that information - so even if you *were* using a Java implementation that included the class, it still wouldn't solve the problem.
I think we need to figure out whether the root cause of this UTFDataFormatException is due to a malformed class file (in which case the compiler needs to be fixed) or a Jode bug (in which case, of course, we need to fix that).
To that end, would you like to mail the offending class file(s) to the Jode maintainer and ask for an informed opinion (unless you happen to know the internals of the classfile format yourself, which I certainly don't ;) )? Or would you like to email the classfile to me, and I'll contact the Jode maintainer myself?
Thanks,
Stuart.
--
Stuart Ballard, Programmer
NetReach - Internet Solutions
(215) 283-2300, ext. 126
http://www.netreach.com/
_______________________________________________
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath