marc fleury wrote:
> 
> You probably have an old jboss.jar that gets picked up somehow in your
> classpath.

Sorry, no old jboss.jar (or other old jBoss jars around).
I already checked this, and now I have re-checked, re-re-checked
and checked an extra time just to be sure.


I'm pretty new to all this classloader stuff, but after some
debugging I think I know what happens:

1) In the ejb-jar.xml file for the Nextgen BMP Bean (in file
   src/deploy/TestBeans.jar), we have a resource reference:
     <resource-ref>
       <description>A jdbc connection for the BMP bean</description>
       <res-ref-name>jdbc/myDatabase</res-ref-name>
       <res-type>javax.sql.DataSource</res-type>
       <res-auth>Container</res-auth>
     </resource-ref>

2) I don't think that this datasource is resolved anywhere, so
   a default datasource should be used.

3) In org.jboss.ejb.Container.setupEnvironment(), the bean
   environment (including resource bindings) is set up.

4) If the reference has not been resolved, and it refers to
   a javax.sql.DataSource, a default datasource must be found.

5) Default datasource is found as follows: Iterate over the
   JNDI initial context, and try to load every class name found
   here to see if the loaded class is assignment compatible
   with DataSource.

6) The three classes that i have problems with seem to
   be listed in JNDI, but cannot be loaded by the classloader.

7) The exception stack is:
   java.lang.ClassNotFoundException: class 
org.jboss.security.EJBSecurityManagerDefaultImpl
        at javax.management.loading.MLet.findClass(MLet.java:641)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
        at org.jboss.ejb.Container.setupEnvironment ...


I think the problem is with 5) above, and that we should try
something smarter to get a default datasource.


Anybody know where to get the JMX RI source ?
It a bit annoying not knowing what MLet.java does at line
641, and the JMX RI docs doesn't say much.


Best Regards,

Ole Husgaard.


> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]]On Behalf Of Ole Husgaard
> > Sent: Saturday, August 12, 2000 10:17 PM
> > To: jBoss Developer
> > Subject: [jBoss-Dev] ClassNotFoundException on deployment
> >
> >
> > Hi,
> >
> > When deploying I am getting:
> > [Container factory] java.lang.ClassNotFoundException: class
> > org.jboss.security.EJBSecurityManagerDefaultImpl
> > [Container factory] java.lang.ClassNotFoundException: class
> > org.jboss.security.SimpleRealmMapping
> > [Container factory] java.lang.ClassNotFoundException: class
> > org.jboss.tm.TxManager
> >
> > These classes reside in dist/lib/ext/jboss.jar, and I have
> > checked that it is
> > added by jboss at startup.
> >
> > When building and running from a fresh CVS snapshot i get one of
> > these exceptions
> > on deployment of the TestBeans.jar (see below for a complete
> > log), so maybe the
> > problem is in jBoss ?
> >
> >
> > Best Regards,
> >
> > Ole Husgaard.
> >
> >
> >
> > [Console logging] Logging started
> > [Classpath] Added
> > directory:file:/home/osh/src/java/downloads/t/jboss/dist/log/
> > [Info] Java version: 1.3.0beta_refresh,Sun Microsystems Inc.
> > [Info] Java VM: Java HotSpot(TM) Client VM 1.3.0beta-b07,Sun
> > Microsystems Inc.
> > [Info] System: Linux 2.2.12-20,i386
[cut]
> > [Container factory] java.lang.ClassNotFoundException: class
> > org.jboss.security.EJBSecurityManagerDefaultImpl
[cut]
> >
> >

Reply via email to