I moved the jdbc driver jar out of the ear and into the server target's lib
directory, and I've not been able to reproduce the error in my unit testing
so far.  

Is the caching that the 1.4 jvm is now doing a problem for the JBoss
classloader design or is it simply a problem/bug in the jvm itself?  If it
is a JBoss classloader issue, is this something that could be fixed?
Especially in cases where Class.forName() is used by the 3rd party code,
even if it's jvm code?  I've made sure to use
Thread.currentThread().getContextClassLoader().loadClass("some.Class").newIn
stance() in all of my code, but in some cases it is impossible to know when
a 3rd party lib might be using Class.forName() under the hood.

Thanks again Adrian for the all the excellent support.
Dustin

> -----Original Message-----
> From: Barlow, Dustin [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, January 14, 2004 9:32 PM
> To: '[EMAIL PROTECTED] '
> Subject: RE: [JBoss-user] jboss-3.2.3: Classloader problem?
> 
> 
> Yes.  Some of the time the error did occur after redeploying. 
>  On occasions
> though, after restarting JBoss, the error would also occur on 
> the first
> process that accessed the datasource from a cmt ssb.  I would 
> just have to
> bounce JBoss again (sometimes more then once) to get the error to stop
> occurring.
> 
> Once the application works (ie no errors on accessing mckoi 
> the first time),
> it continues to work fine until a redeploy or a restart of 
> the server.  The
> occurrence of the error was intermittent between redeploys 
> and restarts so I
> suspect that the jvm caching you referred to certainly could 
> be suspect
> here.
> 
> I did just recently bundle the jdbc datasource jar inside the 
> application's
> ear file with the goal of the application being self 
> contained in the ear
> file.  Before I had just copied it into the server target's 
> lib directory.
> 
> Dustin 
> 
> -----Original Message-----
> From: Adrian Brock
> To: [EMAIL PROTECTED]
> Sent: 1/14/2004 4:24 PM
> Subject: Re: [JBoss-user] jboss-3.2.3: Classloader problem?
> 
> The exception means the classloader has been undeployed.
> It no longer holds a reference to the repository
> Did you redeploy something?
> 
> But something is holding a reference to the classloader.
> It looks like you've hit the caching done by Class.forName()
> in java 1.4 that breaks hot deployment?
> This is especially annoying with the way java.sql.DriverManager
> uses Class.forName()
> In general jdbc drivers are not hot deployable.
> 
> Regards,
> Adrian
> 
> On Wed, 2004-01-14 at 21:13, Barlow, Dustin wrote:
> > I am using McKoi as an embedded database in JBoss-3.2.3.  
> > 
> > The mckoidb.jar is bundled in the application's ear file 
> and uses the
> > following in application.xml to deploy it.
> > 
> > <application>
> >     <module>
> >             <java>mckoidb.jar</java>
> >     </module>
> > </application>
> > 
> > McKoi is registered via -ds.xml file and all code acquires a
> connection from
> > the pool.
> > 
> > <datasources>
> >   <local-tx-datasource>    
> >     <jndi-name>McKoiDS</jndi-name>   
> >  
> >
> <connection-url>jdbc:mckoi:local://../server/workflowengine/da
> ta/mckoi/d
> b.co
> > nf?create_or_boot=true</connection-url>    
> >     <driver-class>com.mckoi.JDBCDriver</driver-class>
> >     <user-name>user</user-name>
> >     <password>password</password>
> >     <min-pool-size>5</min-pool-size>    
> >     <idle-timeout-minutes>0</idle-timeout-minutes>
> >   </local-tx-datasource>  
> > </datasources>
> > 
> > For the most part, it works fine.  However, there are 
> occasions where
> I get
> > the following exception in JBoss.
> > 
> > 2004-01-14 14:50:30,210 WARN  [org.jboss.tm.TransactionImpl]
> XAException:
> > tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=6x23jygzt041//41,
> > BranchQual=] errorCode=XA_UNKNOWN(0)
> > org.jboss.resource.connectionmanager.JBossLocalXAException: Error
> trying to
> > start local tx: ; - nested throwable:
> > (org.jboss.resource.JBossResourceException: SQLException; - nested
> > throwable: (com.mckoi.database.jdbc.MSQLException))
> >     at
> >
> org.jboss.resource.connectionmanager.TxConnectionManager$Local
> XAResource
> sta
> > rt(TxConnectionManager.java:708)
> >     at
> > 
> org.jboss.tm.TransactionImpl.startResource(TransactionImpl.java:1148)
> >     at
> > 
> org.jboss.tm.TransactionImpl.enlistResource(TransactionImpl.java:636)
> >     at
> >
> org.jboss.resource.connectionmanager.TxConnectionManager$TxCon
> nectionEve
> ntLi
> > stener.enlist(TxConnectionManager.java:455)
> >     at
> >
> org.jboss.resource.connectionmanager.TxConnectionManager.manag
> edConnecti
> onRe
> > connected(TxConnectionManager.java:343)
> >     at
> >
> org.jboss.resource.connectionmanager.BaseConnectionManager2.al
> locateConn
> ecti
> > on(BaseConnectionManager2.java:483)
> >     at
> >
> org.jboss.resource.connectionmanager.BaseConnectionManager2$Co
> nnectionMa
> nage
> > rProxy.allocateConnection(BaseConnectionManager2.java:814)
> >     at
> >
> org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnectio
> n(WrapperD
> ataS
> > ource.java:102)
> >     at
> >
> com.nielsenmedia.wfe.persistence.WFEPersistence.openConnection
> (WFEPersis
> tenc
> > e.java:52)
> >     at
> >
> com.nielsenmedia.wfe.persistence.destination.McKoiWFESpecDesti
> nation.set
> up(M
> > cKoiWFESpecDestination.java:51)
> >     at
> >
> com.nielsenmedia.persistence.PersistenceFactory.registerDestin
> ation(Pers
> iste
> > nceFactory.java:105)
> >     at
> >
> com.nielsenmedia.wfe.persistence.McKoiWFEPersistence.registerS
> pecDestina
> tion
> > (McKoiWFEPersistence.java:209)
> >     at
> >
> com.nielsenmedia.wfe.ejb.inbound.ProcessSpecBean.getPersistenc
> eFactory(P
> roce
> > ssSpecBean.java:311)
> >     at
> >
> com.nielsenmedia.wfe.ejb.inbound.ProcessSpecBean.submitSpec(Pr
> ocessSpecB
> ean.
> > java:161)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >     at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> orImpl.jav
> a:39
> > )
> >     at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessor
> Impl
> > .java:25)
> >     at java.lang.reflect.Method.invoke(Method.java:324)
> >     at
> >
> org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.i
> nvoke(Stat
> eles
> > sSessionContainer.java:683)
> >     at
> >
> org.jboss.resource.connectionmanager.CachedConnectionIntercept
> or.invoke(
> Cach
> > edConnectionInterceptor.java:185)
> >     at
> >
> org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invo
> ke(Statele
> ssSe
> > ssionInstanceInterceptor.java:72)
> >     at
> >
> org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(Abstrac
> tTxInterce
> ptor
> > .java:84)
> >     at
> >
> org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxI
> nterceptor
> CMT.
> > java:267)
> >     at
> >
> org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT
> .java:128)
> >     at
> >
> org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInter
> ceptor.jav
> a:11
> > 8)
> >     at
> > org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
> >     at
> >
> org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(Pro
> xyFactoryF
> inde
> > rInterceptor.java:122)
> >     at
> >
> org.jboss.ejb.StatelessSessionContainer.internalInvoke(Statele
> ssSessionC
> onta
> > iner.java:331)
> >     at org.jboss.ejb.Container.invoke(Container.java:700)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >     at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> orImpl.jav
> a:39
> > )
> >     at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessor
> Impl
> > .java:25)
> >     at java.lang.reflect.Method.invoke(Method.java:324)
> >     at
> >
> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(Reflec
> tedMBeanDi
> spat
> > cher.java:284)
> >     at
> > org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
> >     at
> > 
> org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:101)
> >     at
> >
> org.jboss.invocation.InvokerInterceptor.invoke(InvokerIntercep
> tor.java:9
> 0)
> >     at
> >
> org.jboss.proxy.TransactionInterceptor.invoke(TransactionInter
> ceptor.jav
> a:46
> > )
> >     at
> >
> org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor
> .java:45)
> >     at
> >
> org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(Statele
> ssSessionI
> nter
> > ceptor.java:100)
> >     at
> org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
> >     at $Proxy160.submitSpec(Unknown Source)
> >     at
> >
> com.nielsenmedia.wfe.WorkFlowEngineCactus.doTestSpecs(WorkFlow
> EngineCact
> us.j
> > ava:745)
> >     at
> >
> com.nielsenmedia.wfe.WorkFlowEngineCactus.testSpec2(WorkFlowEn
> gineCactus
> jav
> > a:137)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >     at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> orImpl.jav
> a:39
> > )
> >     at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessor
> Impl
> > .java:25)
> >     at java.lang.reflect.Method.invoke(Method.java:324)
> >     at
> >
> org.apache.cactus.AbstractTestCase.runServerTest(AbstractTestC
> ase.java:3
> 32)
> >     at
> >
> org.apache.cactus.AbstractTestCase.runBareServerTest(AbstractT
> estCase.ja
> va:2
> > 35)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestCaller.doTest(Abstract
> WebTestCal
> ler.
> > java:149)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestController.dispatch87_
> handleRequ
> est(
> >
> AbstractWebTestController.java;org/apache/cactus/util/log/LogA
> spect.aj(1
> k):1
> > 25)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestController.around87_ha
> ndleReques
> t(Ab
> >
> stractWebTestController.java;org/apache/cactus/util/log/LogAsp
> ect.aj(1k)
> :114
> > 9)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestController.handleReque
> st(Abstrac
> tWeb
> > TestController.java;org/apache/cactus/util/log/LogAspect.aj(1k):101)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.dispatch113_doP
> ost(Servle
> tTes
> > tRedirector.java;org/apache/cactus/util/log/LogAspect.aj(1k):123)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.around113_doPos
> t(ServletT
> estR
> > edirector.java;org/apache/cactus/util/log/LogAspect.aj(1k):1149)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.doPost(ServletT
> estRedirec
> tor.
> > java;org/apache/cactus/util/log/LogAspect.aj(1k):109)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.dispatch112_doG
> et(Servlet
> Test
> > Redirector.java;org/apache/cactus/util/log/LogAspect.aj(1k):96)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.around112_doGet
> (ServletTe
> stRe
> > director.java;org/apache/cactus/util/log/LogAspect.aj(1k):1149)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.doGet(ServletTe
> stRedirect
> or.j
> > ava;org/apache/cactus/util/log/LogAspect.aj(1k):92)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> tion
> > FilterChain.java:247)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> erCh
> > ain.java:193)
> >     at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> e.ja
> > va:256)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> e.ja
> > va:191)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBo
> ssSecurity
> MgrR
> > ealm.java:220)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.valves.CertificatesValve.invoke(Certificat
> esValve.ja
> va:2
> > 46)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke
> (Container
> Stat
> > sValve.java:76)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardContext.invoke(StandardContex
> t.java:241
> 7)
> >     at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> :180
> > )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDi
> spatcherVa
> lve.
> > java:171)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> :172
> > )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
> SecurityAs
> soci
> > ationValve.java:65)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValv
> e.java:577
> )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> java
> > :174)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.
> java:197)
> >     at
> >
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:78
> 1)
> >     at
> >
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> onne
> > ction(Http11Protocol.java:549)
> >     at
> >
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:60
> 5)
> >     at
> >
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> jav
> > a:677)
> >     at java.lang.Thread.run(Thread.java:534)
> > Caused by: org.jboss.resource.JBossResourceException: 
> SQLException; -
> nested
> > throwable: (com.mckoi.database.jdbc.MSQLException)
> >     at
> >
> org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.c
> heckExcept
> ion(
> > BaseWrapperManagedConnection.java:546)
> >     at
> >
> org.jboss.resource.adapter.jdbc.local.LocalManagedConnection.b
> egin(Local
> Mana
> > gedConnection.java:156)
> >     at
> >
> org.jboss.resource.connectionmanager.TxConnectionManager$Local
> XAResource
> sta
> > rt(TxConnectionManager.java:704)
> >     ... 100 more
> > Caused by: com.mckoi.database.jdbc.MSQLException
> >     at
> >
> com.mckoi.database.jdbcserver.AbstractJDBCDatabaseInterface.ha
> ndleExecut
> eThr
> > owable(AbstractJDBCDatabaseInterface.java:289)
> >     at
> >
> com.mckoi.database.jdbcserver.AbstractJDBCDatabaseInterface.ex
> ecQuery(Ab
> stra
> > ctJDBCDatabaseInterface.java:479)
> >     at
> >
> com.mckoi.database.jdbcserver.JDBCDatabaseInterface.execQuery(
> JDBCDataba
> seIn
> > terface.java:251)
> >     at
> > 
> com.mckoi.database.jdbc.MConnection.executeQuery(MConnection.java:442)
> >     at
> >
> com.mckoi.database.jdbc.MConnection.executeQueries(MConnection
> .java:425)
> >     at
> > 
> com.mckoi.database.jdbc.MStatement.executeQueries(MStatement.java:190)
> >     at
> > com.mckoi.database.jdbc.MStatement.executeQuery(MStatement.java:164)
> >     at
> > com.mckoi.database.jdbc.MStatement.executeQuery(MStatement.java:219)
> >     at
> >
> com.mckoi.database.jdbc.MConnection.setAutoCommit(MConnection.
> java:599)
> >     at
> >
> org.jboss.resource.adapter.jdbc.local.LocalManagedConnection.b
> egin(Local
> Mana
> > gedConnection.java:149)
> >     ... 101 more
> > 
> > 
> > At first, I thought it was a transaction issue, but on further
> analysis I
> > found the following in the McKoi database debug log.
> > 
> > 
> > >
> >
> com.mckoi.database.jdbcserver.DefaultLocalBootable$LocalJDBCDa
> tabaseInte
> rfac
> > e ( lvl: 20 )
> >   Exception thrown during query processing on: [ Query:
> > [ SET AUTO COMMIT OFF ]
> > 
> > ]
> > [ TIME: Wed Jan 14 14:50:30 EST 2004 ]
> > % java.lang.NullPointerException
> >     at
> org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:119)
> >     at
> >
> org.jboss.mx.loading.UnifiedClassLoader3.loadClassImpl(Unified
> ClassLoade
> r3.j
> > ava:169)
> >     at
> >
> org.jboss.mx.loading.UnifiedClassLoader3.loadClass(UnifiedClas
> sLoader3.j
> ava:
> > 123)
> >     at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
> >     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
> >     at java.lang.Class.forName0(Native Method)
> >     at java.lang.Class.forName(Class.java:141)
> >     at
> >
> com.mckoi.database.interpret.SQLQueryExecutor.execute(SQLQuery
> Executor.j
> ava:
> > 120)
> >     at
> >
> com.mckoi.database.jdbcserver.AbstractJDBCDatabaseInterface.ex
> ecQuery(Ab
> stra
> > ctJDBCDatabaseInterface.java:461)
> >     at
> >
> com.mckoi.database.jdbcserver.JDBCDatabaseInterface.execQuery(
> JDBCDataba
> seIn
> > terface.java:251)
> >     at
> > 
> com.mckoi.database.jdbc.MConnection.executeQuery(MConnection.java:442)
> >     at
> >
> com.mckoi.database.jdbc.MConnection.executeQueries(MConnection
> .java:425)
> >     at
> > 
> com.mckoi.database.jdbc.MStatement.executeQueries(MStatement.java:190)
> >     at
> > com.mckoi.database.jdbc.MStatement.executeQuery(MStatement.java:164)
> >     at
> > com.mckoi.database.jdbc.MStatement.executeQuery(MStatement.java:219)
> >     at
> >
> com.mckoi.database.jdbc.MConnection.setAutoCommit(MConnection.
> java:599)
> >     at
> >
> org.jboss.resource.adapter.jdbc.local.LocalManagedConnection.b
> egin(Local
> Mana
> > gedConnection.java:149)
> >     at
> >
> org.jboss.resource.connectionmanager.TxConnectionManager$Local
> XAResource
> sta
> > rt(TxConnectionManager.java:704)
> >     at
> > 
> org.jboss.tm.TransactionImpl.startResource(TransactionImpl.java:1148)
> >     at
> > 
> org.jboss.tm.TransactionImpl.enlistResource(TransactionImpl.java:636)
> >     at
> >
> org.jboss.resource.connectionmanager.TxConnectionManager$TxCon
> nectionEve
> ntLi
> > stener.enlist(TxConnectionManager.java:455)
> >     at
> >
> org.jboss.resource.connectionmanager.TxConnectionManager.manag
> edConnecti
> onRe
> > connected(TxConnectionManager.java:343)
> >     at
> >
> org.jboss.resource.connectionmanager.BaseConnectionManager2.al
> locateConn
> ecti
> > on(BaseConnectionManager2.java:483)
> >     at
> >
> org.jboss.resource.connectionmanager.BaseConnectionManager2$Co
> nnectionMa
> nage
> > rProxy.allocateConnection(BaseConnectionManager2.java:814)
> >     at
> >
> org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnectio
> n(WrapperD
> ataS
> > ource.java:102)
> >     at
> >
> com.nielsenmedia.wfe.persistence.WFEPersistence.openConnection
> (WFEPersis
> tenc
> > e.java:52)
> >     at
> >
> com.nielsenmedia.wfe.persistence.destination.McKoiWFESpecDesti
> nation.set
> up(M
> > cKoiWFESpecDestination.java:51)
> >     at
> >
> com.nielsenmedia.persistence.PersistenceFactory.registerDestin
> ation(Pers
> iste
> > nceFactory.java:105)
> >     at
> >
> com.nielsenmedia.wfe.persistence.McKoiWFEPersistence.registerS
> pecDestina
> tion
> > (McKoiWFEPersistence.java:209)
> >     at
> >
> com.nielsenmedia.wfe.ejb.inbound.ProcessSpecBean.getPersistenc
> eFactory(P
> roce
> > ssSpecBean.java:311)
> >     at
> >
> com.nielsenmedia.wfe.ejb.inbound.ProcessSpecBean.submitSpec(Pr
> ocessSpecB
> ean.
> > java:161)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >     at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> orImpl.jav
> a:39
> > )
> >     at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessor
> Impl
> > .java:25)
> >     at java.lang.reflect.Method.invoke(Method.java:324)
> >     at
> >
> org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.i
> nvoke(Stat
> eles
> > sSessionContainer.java:683)
> >     at
> >
> org.jboss.resource.connectionmanager.CachedConnectionIntercept
> or.invoke(
> Cach
> > edConnectionInterceptor.java:185)
> >     at
> >
> org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invo
> ke(Statele
> ssSe
> > ssionInstanceInterceptor.java:72)
> >     at
> >
> org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(Abstrac
> tTxInterce
> ptor
> > .java:84)
> >     at
> >
> org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxI
> nterceptor
> CMT.
> > java:267)
> >     at
> >
> org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT
> .java:128)
> >     at
> >
> org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInter
> ceptor.jav
> a:11
> > 8)
> >     at
> > org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
> >     at
> >
> org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(Pro
> xyFactoryF
> inde
> > rInterceptor.java:122)
> >     at
> >
> org.jboss.ejb.StatelessSessionContainer.internalInvoke(Statele
> ssSessionC
> onta
> > iner.java:331)
> >     at org.jboss.ejb.Container.invoke(Container.java:700)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >     at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> orImpl.jav
> a:39
> > )
> >     at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessor
> Impl
> > .java:25)
> >     at java.lang.reflect.Method.invoke(Method.java:324)
> >     at
> >
> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(Reflec
> tedMBeanDi
> spat
> > cher.java:284)
> >     at
> > org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
> >     at
> > 
> org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:101)
> >     at
> >
> org.jboss.invocation.InvokerInterceptor.invoke(InvokerIntercep
> tor.java:9
> 0)
> >     at
> >
> org.jboss.proxy.TransactionInterceptor.invoke(TransactionInter
> ceptor.jav
> a:46
> > )
> >     at
> >
> org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor
> .java:45)
> >     at
> >
> org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(Statele
> ssSessionI
> nter
> > ceptor.java:100)
> >     at
> org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
> >     at $Proxy160.submitSpec(Unknown Source)
> >     at
> >
> com.nielsenmedia.wfe.WorkFlowEngineCactus.doTestSpecs(WorkFlow
> EngineCact
> us.j
> > ava:745)
> >     at
> >
> com.nielsenmedia.wfe.WorkFlowEngineCactus.testSpec2(WorkFlowEn
> gineCactus
> jav
> > a:137)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >     at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> orImpl.jav
> a:39
> > )
> >     at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessor
> Impl
> > .java:25)
> >     at java.lang.reflect.Method.invoke(Method.java:324)
> >     at
> >
> org.apache.cactus.AbstractTestCase.runServerTest(AbstractTestC
> ase.java:3
> 32)
> >     at
> >
> org.apache.cactus.AbstractTestCase.runBareServerTest(AbstractT
> estCase.ja
> va:2
> > 35)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestCaller.doTest(Abstract
> WebTestCal
> ler.
> > java:149)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestController.dispatch87_
> handleRequ
> est(
> >
> AbstractWebTestController.java;org/apache/cactus/util/log/LogA
> spect.aj(1
> k):1
> > 25)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestController.around87_ha
> ndleReques
> t(Ab
> >
> stractWebTestController.java;org/apache/cactus/util/log/LogAsp
> ect.aj(1k)
> :114
> > 9)
> >     at
> >
> org.apache.cactus.server.AbstractWebTestController.handleReque
> st(Abstrac
> tWeb
> > TestController.java;org/apache/cactus/util/log/LogAspect.aj(1k):101)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.dispatch113_doP
> ost(Servle
> tTes
> > tRedirector.java;org/apache/cactus/util/log/LogAspect.aj(1k):123)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.around113_doPos
> t(ServletT
> estR
> > edirector.java;org/apache/cactus/util/log/LogAspect.aj(1k):1149)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.doPost(ServletT
> estRedirec
> tor.
> > java;org/apache/cactus/util/log/LogAspect.aj(1k):109)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.dispatch112_doG
> et(Servlet
> Test
> > Redirector.java;org/apache/cactus/util/log/LogAspect.aj(1k):96)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.around112_doGet
> (ServletTe
> stRe
> > director.java;org/apache/cactus/util/log/LogAspect.aj(1k):1149)
> >     at
> >
> org.apache.cactus.server.ServletTestRedirector.doGet(ServletTe
> stRedirect
> or.j
> > ava;org/apache/cactus/util/log/LogAspect.aj(1k):92)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> tion
> > FilterChain.java:247)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> erCh
> > ain.java:193)
> >     at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> e.ja
> > va:256)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> e.ja
> > va:191)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBo
> ssSecurity
> MgrR
> > ealm.java:220)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.valves.CertificatesValve.invoke(Certificat
> esValve.ja
> va:2
> > 46)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke
> (Container
> Stat
> > sValve.java:76)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardContext.invoke(StandardContex
> t.java:241
> 7)
> >     at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> :180
> > )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDi
> spatcherVa
> lve.
> > java:171)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> :172
> > )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
> SecurityAs
> soci
> > ationValve.java:65)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValv
> e.java:577
> )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> java
> > :174)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.i
> nvok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:4
> 80)
> >     at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.
> java:197)
> >     at
> >
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:78
> 1)
> >     at
> >
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> onne
> > ction(Http11Protocol.java:549)
> >     at
> >
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:60
> 5)
> >     at
> >
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> jav
> > a:677)
> >     at java.lang.Thread.run(Thread.java:534)
> > 
> > 
> > I then when and looked at the LoadMgr3 class at line 119 and
> discovered that
> > the exception might actually be due to a classloading issue of some
> sort,
> > not a transactional problem.
> > 
> > >From ./jmx/src/main/org/jboss/mx/loading/LoadMgr3.java
> > 
> >    public static boolean beginLoadTask(ClassLoadingTask task,
> >       UnifiedLoaderRepository3 repository)
> >       throws ClassNotFoundException
> >    {
> >       boolean trace = log.isTraceEnabled();
> >       if( trace )
> >          log.trace("Begin beginLoadTask, task="+task);
> > 
> >       // Try the cache before anything else.
> >       Class cls = 
> repository.loadClassFromCache(task.classname);  <---
> this
> > is line 119 ******
> >       if( cls != null )
> >       {
> >          task.loadedClass = cls;
> >          task.state = ClassLoadingTask.FINISHED;
> >          if( trace )
> >             log.trace("End beginLoadTask, loadClassFromCache,
> classname:
> > "+task.classname);
> >          return true;
> >       }
> > 
> > 
> > It appears that either "repository" or "task" is null in this case.
> Since
> > there are no checks for null on these variables, I'm 
> guessing that the
> > assumption was made that they never should be null.
> > 
> > Any suggestions on where to look next, or possible solutions?
> > 
> > Thanks,
> > Dustin
> > 
> > 
> > 
> > 
> > 
> > 
> > -------------------------------------------------------
> > This SF.net email is sponsored by: Perforce Software.
> > Perforce is the Fast Software Configuration Management 
> System offering
> > advanced branching capabilities and atomic changes on 50+ platforms.
> > Free Eval! http://www.perforce.com/perforce/loadprog.html
> > _______________________________________________
> > JBoss-user mailing list
> > [EMAIL PROTECTED]
> > https://lists.sourceforge.net/lists/listinfo/jboss-user
> -- 
> xxxxxxxxxxxxxxxxxxxxxxxx 
> Adrian Brock
> Director of Support
> Back Office
> JBoss Group, LLC 
> xxxxxxxxxxxxxxxxxxxxxxxx 
> 
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: Perforce Software.
> Perforce is the Fast Software Configuration Management System offering
> advanced branching capabilities and atomic changes on 50+ platforms.
> Free Eval! http://www.perforce.com/perforce/loadprog.html
> _______________________________________________
> JBoss-user mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/jboss-user
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: Perforce Software.
> Perforce is the Fast Software Configuration Management System offering
> advanced branching capabilities and atomic changes on 50+ platforms.
> Free Eval! http://www.perforce.com/perforce/loadprog.html
> _______________________________________________
> JBoss-user mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/jboss-user
> 


-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to