Hi all,
After some hair pulling I figured I'd better just email the list with this
one...
I have a class that contains an array of Objects and another array of
Classes. This class then uses java.lang.reflect to work its magic in
calling various methods on the objects in the array. The code compiles
perfectly fine, but when I try to load this class at runtime, the class
loader throws a ClassFormatError saying "Illegal Class name
java/lang/Class[]".
The weird thing is that others in the development team run this same code
without any problems. I did some research into this but came up with no
answers, my guess is that it has something to do with the fact that the
class uses reflection, but I can't be sure.
I'm hoping that I am overlooking the obvious here, ANY help is greatly
appreciated.
For whatever help they might be, I am attaching the exception text, the
results of running 'javap' on the offending class and my server.xml (ccv26
context).
My setup
--------
JDK: 1.3.0_02
Tomcat: 4.0.3
Platform: Windows 2000
Thanks,
Mike
Compiled from ReportVector.java
public class com.c_cor.ui.ccvg.report.cpeanalysis.ReportVector extends
java.lang.Object {
protected static com.c_cor.ui.ccvg.util.UIProperties props;
protected static com.c_cor.util.Logger log;
protected static boolean debug;
protected java.util.HashMap fieldMap;
protected com.c_cor.ui.ccvg.report.cpeanalysis.CpeReport cpeReport;
protected float derivedValue;
protected java.lang.Class classArray[];
protected java.lang.Object paramArray[];
static java.lang.Class class$java$lang$Object;
public
com.c_cor.ui.ccvg.report.cpeanalysis.ReportVector(com.c_cor.ui.ccvg.report.cpeanalysis.CpeReport);
public java.lang.String toString();
public void putField(com.c_cor.ui.ccvg.report.cpeanalysis.Field);
public java.util.HashMap getFieldMap();
public float getDerivedValue();
public void setDerivedValue(float);
public void generateDerivedFields();
public void displayDerivedFields();
public java.lang.Object invokeDerivedMethod(java.lang.String);
protected java.util.ArrayList getDerivedFieldParams(java.util.ArrayList, int);
protected java.lang.String parseObjectName(java.lang.String);
protected java.lang.String parseMethodName(java.lang.String);
protected java.lang.Object getValue(java.lang.Integer);
static java.lang.Class class$(java.lang.String);
static {};
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]