Sorry,
"MyCass obj = (MyCass)Class.forName(MyCass.class.getName());"
----- Original Message -----
From: "Juozas Baliuka" <[EMAIL PROTECTED]>
To: "Jakarta Commons Developers List" <[EMAIL PROTECTED]>
Sent: Wednesday, May 01, 2002 9:49 PM
Subject: Re: ClassCastException raised in newFactory() method when starting
from JUnit test
> Hi,
> I am not sure about "newFactory()", but in the most problem is like this:
>
> MyCass obj = Class.forName(MyCass.class.getName());
>
> This allways throws ClassCastException if this code is loaded not by
> "SystemClassLoader".
> In this case we have two diferent classes, the same name but not
> ClassLoader.
>
> This is OK:
> MyCass obj = Class.forName(MyCass.class.getName(),true,
> MyCass.class.getClassLoader() );
>
> Both classes have the same name and ClassLoader.
>
> if "newFactory()" doe's "Class.forName" it must have alternatyve:
> "newFactory(ClassLoader cl)" and use "cl" as parameter in "Class.forName".
>
>
>
>
> ----- Original Message -----
> From: "Rice Yeh" <[EMAIL PROTECTED]>
> To: ""Jakarta Commons Developers List"" <[EMAIL PROTECTED]>
> Sent: Wednesday, May 01, 2002 2:48 PM
> Subject: RE: ClassCastException raised in newFactory() method when
starting
> from JUnit test
>
>
> > Hi,
> > Sorry, I past wrong attachement. The original one will not cause this
> problem. I attache a new one, which just moves
> >
> > Digester d = new Digester();
> > System.out.println("OK");
> > to testLogging() method.
> >
> > Regards,
> > Rice
> >
> > [EMAIL PROTECTED] (Rice Yeh) wrote:
> >
> > >Hi all,
> > >
> > > Just wonder why ClassCastException is raised at line 496 of LogFactory
> in newFactory() method when running as a JUnit test? I found this problem
> when running RequiredNameTest in commons-validator. When casting a class
to
> some superclass, does classloader from other thread form a namespace and
so
> can NOT cast it? Java language spec seems not regulate this. I have proven
> this with a small program.
> > > Attached are JUnit test files I use to study this problem.
> > >
> > >Regards,
> > >Rice
> > >
> > >
> > >__________________________________________________________________
> > >Your favorite stores, helpful shopping tools and great gift ideas.
> Experience the convenience of buying online with Shop@Netscape!
> http://shopnow.netscape.com/
> > >
> > >Get your own FREE, personal Netscape Mail account today at
> http://webmail.netscape.com/
> > >
> >
> >
> > __________________________________________________________________
> > Your favorite stores, helpful shopping tools and great gift ideas.
> Experience the convenience of buying online with Shop@Netscape!
> http://shopnow.netscape.com/
> >
> > Get your own FREE, personal Netscape Mail account today at
> http://webmail.netscape.com/
> >
>
>
> --------------------------------------------------------------------------
--
> ----
>
>
> > /*
> > * TestSuite.java
> > * JUnit based test
> > *
> > * Created on May 1, 2002, 7:38 PM
> > */
> >
> > package test;
> >
> > import junit.framework.*;
> > import org.apache.commons.digester.Digester;
> >
> > /**
> > *
> > * @author Rice Yeh
> > */
> > public class LoggingFromDigestTest extends TestCase
> > {
> >
> > public LoggingFromDigestTest(java.lang.String testName)
> > {
> > super(testName);
> > }
> >
> > public static void main(java.lang.String[] args)
> > {
> >
> >
> > junit.swingui.TestRunner.run(suite());
> > }
> >
> > public void setUp()
> > {
> >
> > }
> >
> >
> >
> > public static Test suite()
> > {
> > TestSuite suite = new TestSuite(LoggingFromDigestTest.class);
> >
> > return suite;
> > }
> >
> > public void testLogging()
> > {
> > Digester d = new Digester();
> > System.out.println("OK");
> > }
> >
> > public void tearDown()
> > {
> > }
> > }
> >
> >
>
>
> --------------------------------------------------------------------------
--
> ----
>
>
> > --
> > To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
>
>
> --
> To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>
>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>