From: Harring F. <har...@ya...> - 2005-02-15 05:58:33
|
I found out the problem. Chuck McManis wrote this life-saver article explaining the reason. Indeed a must read to any java programmer. THANKS CHUCK (if you happen to find this email :P) !! Harring. http://www.javaworld.com/javaworld/jw-10-1996/jw-10-indepth-p2.html --- Harring Figueiredo <har...@ya...> wrote: > > Folks: I posted this on the developer's list and got no reply. > > Hope this is the right list. Thank you for any help. > > > > I am trying to use the TestCaseClassLoader to load some of my classes (For > a > different project :P). > > I got it to work with a rather strange behavior. I am sure it is more of a > 'id 10 t' type of error :). > > Here is what I have: > > C implements CI > > > I can load C correctly; however, it says that C is not an intance of CI. > > If I use the default class loader, it indeed says it is an 'instanceof' CI. > > Andy ideas ? > > Thanks for any help in advance! > > (Here is the code.) > > /**** C class no package define -- I don't think it matters...*/ > import somepackage; > public class C implements CI{ > public C() { System.out.println("Hello World"); } > public void sayHello(){ System.out.println("Say Hello"); > } > > /** CI interface **/ > package somepacckage; > public interface CI{ > public void sayHello(); > } > > class Test { > public static void main(String[] args) > { > try{ > TestCaseClassLoader cl= new > TestCaseClassLoader(/* Classpath is defined !!! */); > > Class c = cl.loadClass("C", true); > //Class c = cl.getClass().forName("C"); <== THIS WORKS !!! > Object o = c.newInstance(); > System.out.println(o.getClass().getName()); // Prints C > > System.out.println(" Object "+ > o.getClass().getClassLoader().toString()); // Returns TestClassLoader > > if( o instanceof CI){ // goes here with default system classloader > System.out.println(" Instance "+ o.getClass().getName()); > ci = (CI)o; > } > else{ // GOES here with the TestClassLoader > System.out.println("NOT Instance "+ > o.getClass().getName()); > } > } > > > > > > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real users. > Discover which products truly live up to the hype. Start reading now. > http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click > _______________________________________________ > Junit-devel mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/junit-devel > __________________________________ Do you Yahoo!? Yahoo! Mail - now with 250MB free storage. Learn more. http://info.mail.yahoo.com/mail_250 |