You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Andre Prasetya <an...@gmail.com> on 2007/01/08 11:32:17 UTC

Error when stopping or reloading web application

Hi, I got a problem. I always see this at catalina.out everytime I stopped
or reload the web application, what can I do to stop this ? My Application
is Thread based and run behind a web application. When the web application
stopped, it will set the stop value of the Thread as true and will dump
everything on queue to harddrive. Here is the snippet from the catalina.out


Jan 8, 2007 4:51:49 PM
org.apache.catalina.loader.WebappClassLoaderfindResourceInternal
INFO: Illegal access: this web application instance has been stopped
already.  Could not load commons-logging.properties.  The eventual following
stack trace is caused by an error thrown for debugging purposes as well as
to attempt to terminate the thread which caused the illegal access, and has
no functional impact.
Jan 8, 2007 4:51:49 PM
org.apache.catalina.loader.WebappClassLoaderfindResourceInternal
INFO: Illegal access: this web application instance has been stopped
already.  Could not load
META-INF/services/org.apache.commons.logging.LogFactory.  The eventual
following stack trace is caused by an error thrown for debugging purposes as
well as to attempt to terminate the thread which caused the illegal access,
and has no functional impact.
Jan 8, 2007 4:51:49 PM org.apache.catalina.loader.WebappClassLoaderloadClass
INFO: Illegal access: this web application instance has been stopped
already.  Could not load org.apache.log4j.Logger.  The eventual following
stack trace is caused by an error thrown for debugging purposes as well as
to attempt to terminate the thread which caused the illegal access, and has
no functional impact.
java.lang.IllegalStateException
        at org.apache.catalina.loader.WebappClassLoader.loadClass(
WebappClassLoader.java:1238)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(
WebappClassLoader.java:1198)
        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
LogFactoryImpl.java:441)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
LogFactoryImpl.java:435)
        at org.apache.commons.logging.impl.LogFactoryImpl.isLog4JAvailable(
LogFactoryImpl.java:505)
        at org.apache.commons.logging.impl.LogFactoryImpl.getLogClassName(
LogFactoryImpl.java:327)
        at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
LogFactoryImpl.java:368)
        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
LogFactoryImpl.java:529)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:235)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:209)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
        at com.csp.util.Logging.getLogger(Logging.java:28)
        at com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
        at com.csp.agent.DualStorageDispatcher.retrieve(
DualStorageDispatcher.java:34)
        at com.csp.agent.DualStorageDispatcher.dump(
DualStorageDispatcher.java:56)
        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
Jan 8, 2007 4:51:49 PM org.apache.catalina.loader.WebappClassLoaderloadClass
INFO: Illegal access: this web application instance has been stopped
already.  Could not load org.apache.commons.logging.impl.Log4JLogger.  The
eventual following stack trace is caused by an error thrown for debugging
purposes as well as to attempt to terminate the thread which caused the
illegal access, and has no functional impact.
java.lang.IllegalStateException
        at org.apache.catalina.loader.WebappClassLoader.loadClass(
WebappClassLoader.java:1238)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(
WebappClassLoader.java:1198)
        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
LogFactoryImpl.java:441)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
LogFactoryImpl.java:435)
        at org.apache.commons.logging.impl.LogFactoryImpl.isLog4JAvailable(
LogFactoryImpl.java:506)
        at org.apache.commons.logging.impl.LogFactoryImpl.getLogClassName(
LogFactoryImpl.java:327)
        at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
LogFactoryImpl.java:368)
        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
LogFactoryImpl.java:529)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:235)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:209)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
        at com.csp.util.Logging.getLogger(Logging.java:28)
        at com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
        at com.csp.agent.DualStorageDispatcher.retrieve(
DualStorageDispatcher.java:34)
        at com.csp.agent.DualStorageDispatcher.dump(
DualStorageDispatcher.java:56)
        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
Jan 8, 2007 4:51:49 PM org.apache.catalina.loader.WebappClassLoaderloadClass
INFO: Illegal access: this web application instance has been stopped
already.  Could not load org.apache.commons.logging.impl.Log4JLogger.  The
eventual following stack trace is caused by an error thrown for debugging
purposes as well as to attempt to terminate the thread which caused the
illegal access, and has no functional impact.
java.lang.IllegalStateException
        at org.apache.catalina.loader.WebappClassLoader.loadClass(
WebappClassLoader.java:1238)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(
WebappClassLoader.java:1198)
        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
LogFactoryImpl.java:441)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
LogFactoryImpl.java:435)
        at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
LogFactoryImpl.java:376)
        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
LogFactoryImpl.java:529)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:235)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:209)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
        at com.csp.util.Logging.getLogger(Logging.java:28)
        at com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
        at com.csp.agent.DualStorageDispatcher.retrieve(
DualStorageDispatcher.java:34)
        at com.csp.agent.DualStorageDispatcher.dump(
DualStorageDispatcher.java:56)
        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
Exception in thread "Thread-45"
org.apache.commons.logging.LogConfigurationException:
java.lang.NullPointerException (Caused by java.lang.NullPointerException)
        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
LogFactoryImpl.java:538)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:235)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
LogFactoryImpl.java:209)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
        at com.csp.util.Logging.getLogger(Logging.java:28)
        at com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
        at com.csp.agent.DualStorageDispatcher.retrieve(
DualStorageDispatcher.java:34)
        at com.csp.agent.DualStorageDispatcher.dump(
DualStorageDispatcher.java:56)
        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
Caused by: java.lang.NullPointerException
        at org.apache.log4j.LogManager.getLogger(LogManager.java:188)
        at org.apache.log4j.Logger.getLogger(Logger.java:104)
        at org.apache.commons.logging.impl.Log4JLogger.getLogger(
Log4JLogger.java:283)
        at org.apache.commons.logging.impl.Log4JLogger.<init>(
Log4JLogger.java:108)
        at sun.reflect.GeneratedConstructorAccessor21.newInstance(Unknown
Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
LogFactoryImpl.java:529)
        ... 8 more


-- 
-Andre-

People see things the way they are and say "why ?" I see things that never
were and say "Why not ?"

Re: Error when stopping or reloading web application

Posted by Leon Rosenberg <ro...@googlemail.com>.
A good solution (or it seems to be one, at least it works for me) is
to have a contextlistener which explicitely stops all custom threads
(even daemon threads).

regards
Leon

On 1/8/07, David Delbecq <de...@oma.be> wrote:
> I have the same problem here. That's a problem coming from the way
> jakarta common logging works together with the way tomcat invalidate
> it's webappclassloader before calling the servelt unloading code. When a
> class need a logger it does all sort of classloading stuff.
> Unfortunately, when you do this during the servlet unloading process,
> tomcat concludes the webapp has no intention to stop as it requires new
> classes from an invalidated WebappClassLoader (this could also be caused
> by a webapp specific thread that did not get close notification). The
> main problem with this annoyance is that it deliberatly throw a
> ThreadDeathException, breaking you servlet unloading/cleanup code.
>
> Despite what is said on console, it has functional impact. In my case,
> this prevented a background Threaded process to stop because, when i try
> to logout a 'unloading all currently XXXX threads due to servlet
> unloading' i get the exception and byebye the unloading of my own
> threads. They stay there. I did remove the logging comments in my
> unloading thread to prevent this, but it's still a problem. Some people
> may have web application or libraries they have no control on which
> cause this kind of exception. Maybe the webappclassloader should be
> invalidated *after* all servlet unloading stuff is run and not before??
>
> This is a question to the dev team...
>
> En l'instant précis du 01/08/07 11:32, Andre Prasetya s'exprimait dans
> toute sa noblesse:
> > Hi, I got a problem. I always see this at catalina.out everytime I
> > stopped
> > or reload the web application, what can I do to stop this ? My
> > Application
> > is Thread based and run behind a web application. When the web
> > application
> > stopped, it will set the stop value of the Thread as true and will dump
> > everything on queue to harddrive. Here is the snippet from the
> > catalina.out
> >
> >
> > Jan 8, 2007 4:51:49 PM
> > org.apache.catalina.loader.WebappClassLoaderfindResourceInternal
> > INFO: Illegal access: this web application instance has been stopped
> > already.  Could not load commons-logging.properties.  The eventual
> > following
> > stack trace is caused by an error thrown for debugging purposes as
> > well as
> > to attempt to terminate the thread which caused the illegal access,
> > and has
> > no functional impact.
> > Jan 8, 2007 4:51:49 PM
> > org.apache.catalina.loader.WebappClassLoaderfindResourceInternal
> > INFO: Illegal access: this web application instance has been stopped
> > already.  Could not load
> > META-INF/services/org.apache.commons.logging.LogFactory.  The eventual
> > following stack trace is caused by an error thrown for debugging
> > purposes as
> > well as to attempt to terminate the thread which caused the illegal
> > access,
> > and has no functional impact.
> > Jan 8, 2007 4:51:49 PM
> > org.apache.catalina.loader.WebappClassLoaderloadClass
> > INFO: Illegal access: this web application instance has been stopped
> > already.  Could not load org.apache.log4j.Logger.  The eventual following
> > stack trace is caused by an error thrown for debugging purposes as
> > well as
> > to attempt to terminate the thread which caused the illegal access,
> > and has
> > no functional impact.
> > java.lang.IllegalStateException
> >        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> > WebappClassLoader.java:1238)
> >        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> > WebappClassLoader.java:1198)
> >        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
> > LogFactoryImpl.java:441)
> >        at java.security.AccessController.doPrivileged(Native Method)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
> > LogFactoryImpl.java:435)
> >        at
> > org.apache.commons.logging.impl.LogFactoryImpl.isLog4JAvailable(
> > LogFactoryImpl.java:505)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getLogClassName(
> > LogFactoryImpl.java:327)
> >        at
> > org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
> > LogFactoryImpl.java:368)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> > LogFactoryImpl.java:529)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:235)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:209)
> >        at
> > org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> >        at com.csp.util.Logging.getLogger(Logging.java:28)
> >        at
> > com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
> >        at com.csp.agent.DualStorageDispatcher.retrieve(
> > DualStorageDispatcher.java:34)
> >        at com.csp.agent.DualStorageDispatcher.dump(
> > DualStorageDispatcher.java:56)
> >        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> > Jan 8, 2007 4:51:49 PM
> > org.apache.catalina.loader.WebappClassLoaderloadClass
> > INFO: Illegal access: this web application instance has been stopped
> > already.  Could not load org.apache.commons.logging.impl.Log4JLogger.
> > The
> > eventual following stack trace is caused by an error thrown for debugging
> > purposes as well as to attempt to terminate the thread which caused the
> > illegal access, and has no functional impact.
> > java.lang.IllegalStateException
> >        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> > WebappClassLoader.java:1238)
> >        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> > WebappClassLoader.java:1198)
> >        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
> > LogFactoryImpl.java:441)
> >        at java.security.AccessController.doPrivileged(Native Method)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
> > LogFactoryImpl.java:435)
> >        at
> > org.apache.commons.logging.impl.LogFactoryImpl.isLog4JAvailable(
> > LogFactoryImpl.java:506)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getLogClassName(
> > LogFactoryImpl.java:327)
> >        at
> > org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
> > LogFactoryImpl.java:368)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> > LogFactoryImpl.java:529)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:235)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:209)
> >        at
> > org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> >        at com.csp.util.Logging.getLogger(Logging.java:28)
> >        at
> > com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
> >        at com.csp.agent.DualStorageDispatcher.retrieve(
> > DualStorageDispatcher.java:34)
> >        at com.csp.agent.DualStorageDispatcher.dump(
> > DualStorageDispatcher.java:56)
> >        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> > Jan 8, 2007 4:51:49 PM
> > org.apache.catalina.loader.WebappClassLoaderloadClass
> > INFO: Illegal access: this web application instance has been stopped
> > already.  Could not load org.apache.commons.logging.impl.Log4JLogger.
> > The
> > eventual following stack trace is caused by an error thrown for debugging
> > purposes as well as to attempt to terminate the thread which caused the
> > illegal access, and has no functional impact.
> > java.lang.IllegalStateException
> >        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> > WebappClassLoader.java:1238)
> >        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> > WebappClassLoader.java:1198)
> >        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
> > LogFactoryImpl.java:441)
> >        at java.security.AccessController.doPrivileged(Native Method)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
> > LogFactoryImpl.java:435)
> >        at
> > org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
> > LogFactoryImpl.java:376)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> > LogFactoryImpl.java:529)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:235)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:209)
> >        at
> > org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> >        at com.csp.util.Logging.getLogger(Logging.java:28)
> >        at
> > com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
> >        at com.csp.agent.DualStorageDispatcher.retrieve(
> > DualStorageDispatcher.java:34)
> >        at com.csp.agent.DualStorageDispatcher.dump(
> > DualStorageDispatcher.java:56)
> >        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> > Exception in thread "Thread-45"
> > org.apache.commons.logging.LogConfigurationException:
> > java.lang.NullPointerException (Caused by java.lang.NullPointerException)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> > LogFactoryImpl.java:538)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:235)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> > LogFactoryImpl.java:209)
> >        at
> > org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> >        at com.csp.util.Logging.getLogger(Logging.java:28)
> >        at
> > com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
> >        at com.csp.agent.DualStorageDispatcher.retrieve(
> > DualStorageDispatcher.java:34)
> >        at com.csp.agent.DualStorageDispatcher.dump(
> > DualStorageDispatcher.java:56)
> >        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> > Caused by: java.lang.NullPointerException
> >        at org.apache.log4j.LogManager.getLogger(LogManager.java:188)
> >        at org.apache.log4j.Logger.getLogger(Logger.java:104)
> >        at org.apache.commons.logging.impl.Log4JLogger.getLogger(
> > Log4JLogger.java:283)
> >        at org.apache.commons.logging.impl.Log4JLogger.<init>(
> > Log4JLogger.java:108)
> >        at sun.reflect.GeneratedConstructorAccessor21.newInstance(Unknown
> > Source)
> >        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
> > DelegatingConstructorAccessorImpl.java:27)
> >        at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> >        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> > LogFactoryImpl.java:529)
> >        ... 8 more
> >
> >
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: Error when stopping or reloading web application

Posted by David Delbecq <de...@oma.be>.
I have the same problem here. That's a problem coming from the way
jakarta common logging works together with the way tomcat invalidate
it's webappclassloader before calling the servelt unloading code. When a
class need a logger it does all sort of classloading stuff.
Unfortunately, when you do this during the servlet unloading process,
tomcat concludes the webapp has no intention to stop as it requires new
classes from an invalidated WebappClassLoader (this could also be caused
by a webapp specific thread that did not get close notification). The
main problem with this annoyance is that it deliberatly throw a
ThreadDeathException, breaking you servlet unloading/cleanup code.

Despite what is said on console, it has functional impact. In my case,
this prevented a background Threaded process to stop because, when i try
to logout a 'unloading all currently XXXX threads due to servlet
unloading' i get the exception and byebye the unloading of my own
threads. They stay there. I did remove the logging comments in my
unloading thread to prevent this, but it's still a problem. Some people
may have web application or libraries they have no control on which
cause this kind of exception. Maybe the webappclassloader should be
invalidated *after* all servlet unloading stuff is run and not before??

This is a question to the dev team...

En l'instant précis du 01/08/07 11:32, Andre Prasetya s'exprimait dans
toute sa noblesse:
> Hi, I got a problem. I always see this at catalina.out everytime I
> stopped
> or reload the web application, what can I do to stop this ? My
> Application
> is Thread based and run behind a web application. When the web
> application
> stopped, it will set the stop value of the Thread as true and will dump
> everything on queue to harddrive. Here is the snippet from the
> catalina.out
>
>
> Jan 8, 2007 4:51:49 PM
> org.apache.catalina.loader.WebappClassLoaderfindResourceInternal
> INFO: Illegal access: this web application instance has been stopped
> already.  Could not load commons-logging.properties.  The eventual
> following
> stack trace is caused by an error thrown for debugging purposes as
> well as
> to attempt to terminate the thread which caused the illegal access,
> and has
> no functional impact.
> Jan 8, 2007 4:51:49 PM
> org.apache.catalina.loader.WebappClassLoaderfindResourceInternal
> INFO: Illegal access: this web application instance has been stopped
> already.  Could not load
> META-INF/services/org.apache.commons.logging.LogFactory.  The eventual
> following stack trace is caused by an error thrown for debugging
> purposes as
> well as to attempt to terminate the thread which caused the illegal
> access,
> and has no functional impact.
> Jan 8, 2007 4:51:49 PM
> org.apache.catalina.loader.WebappClassLoaderloadClass
> INFO: Illegal access: this web application instance has been stopped
> already.  Could not load org.apache.log4j.Logger.  The eventual following
> stack trace is caused by an error thrown for debugging purposes as
> well as
> to attempt to terminate the thread which caused the illegal access,
> and has
> no functional impact.
> java.lang.IllegalStateException
>        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> WebappClassLoader.java:1238)
>        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> WebappClassLoader.java:1198)
>        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
> LogFactoryImpl.java:441)
>        at java.security.AccessController.doPrivileged(Native Method)
>        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
> LogFactoryImpl.java:435)
>        at
> org.apache.commons.logging.impl.LogFactoryImpl.isLog4JAvailable(
> LogFactoryImpl.java:505)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getLogClassName(
> LogFactoryImpl.java:327)
>        at
> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
> LogFactoryImpl.java:368)
>        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> LogFactoryImpl.java:529)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:235)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:209)
>        at
> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>        at com.csp.util.Logging.getLogger(Logging.java:28)
>        at
> com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
>        at com.csp.agent.DualStorageDispatcher.retrieve(
> DualStorageDispatcher.java:34)
>        at com.csp.agent.DualStorageDispatcher.dump(
> DualStorageDispatcher.java:56)
>        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> Jan 8, 2007 4:51:49 PM
> org.apache.catalina.loader.WebappClassLoaderloadClass
> INFO: Illegal access: this web application instance has been stopped
> already.  Could not load org.apache.commons.logging.impl.Log4JLogger. 
> The
> eventual following stack trace is caused by an error thrown for debugging
> purposes as well as to attempt to terminate the thread which caused the
> illegal access, and has no functional impact.
> java.lang.IllegalStateException
>        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> WebappClassLoader.java:1238)
>        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> WebappClassLoader.java:1198)
>        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
> LogFactoryImpl.java:441)
>        at java.security.AccessController.doPrivileged(Native Method)
>        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
> LogFactoryImpl.java:435)
>        at
> org.apache.commons.logging.impl.LogFactoryImpl.isLog4JAvailable(
> LogFactoryImpl.java:506)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getLogClassName(
> LogFactoryImpl.java:327)
>        at
> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
> LogFactoryImpl.java:368)
>        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> LogFactoryImpl.java:529)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:235)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:209)
>        at
> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>        at com.csp.util.Logging.getLogger(Logging.java:28)
>        at
> com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
>        at com.csp.agent.DualStorageDispatcher.retrieve(
> DualStorageDispatcher.java:34)
>        at com.csp.agent.DualStorageDispatcher.dump(
> DualStorageDispatcher.java:56)
>        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> Jan 8, 2007 4:51:49 PM
> org.apache.catalina.loader.WebappClassLoaderloadClass
> INFO: Illegal access: this web application instance has been stopped
> already.  Could not load org.apache.commons.logging.impl.Log4JLogger. 
> The
> eventual following stack trace is caused by an error thrown for debugging
> purposes as well as to attempt to terminate the thread which caused the
> illegal access, and has no functional impact.
> java.lang.IllegalStateException
>        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> WebappClassLoader.java:1238)
>        at org.apache.catalina.loader.WebappClassLoader.loadClass(
> WebappClassLoader.java:1198)
>        at org.apache.commons.logging.impl.LogFactoryImpl$1.run(
> LogFactoryImpl.java:441)
>        at java.security.AccessController.doPrivileged(Native Method)
>        at org.apache.commons.logging.impl.LogFactoryImpl.loadClass(
> LogFactoryImpl.java:435)
>        at
> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(
> LogFactoryImpl.java:376)
>        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> LogFactoryImpl.java:529)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:235)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:209)
>        at
> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>        at com.csp.util.Logging.getLogger(Logging.java:28)
>        at
> com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
>        at com.csp.agent.DualStorageDispatcher.retrieve(
> DualStorageDispatcher.java:34)
>        at com.csp.agent.DualStorageDispatcher.dump(
> DualStorageDispatcher.java:56)
>        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> Exception in thread "Thread-45"
> org.apache.commons.logging.LogConfigurationException:
> java.lang.NullPointerException (Caused by java.lang.NullPointerException)
>        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> LogFactoryImpl.java:538)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:235)
>        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(
> LogFactoryImpl.java:209)
>        at
> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>        at com.csp.util.Logging.getLogger(Logging.java:28)
>        at
> com.ricochet.dao.FileInboundDao.retrieve(FileInboundDao.java:113)
>        at com.csp.agent.DualStorageDispatcher.retrieve(
> DualStorageDispatcher.java:34)
>        at com.csp.agent.DualStorageDispatcher.dump(
> DualStorageDispatcher.java:56)
>        at com.csp.agent.Dispatcher.run(Dispatcher.java:81)
> Caused by: java.lang.NullPointerException
>        at org.apache.log4j.LogManager.getLogger(LogManager.java:188)
>        at org.apache.log4j.Logger.getLogger(Logger.java:104)
>        at org.apache.commons.logging.impl.Log4JLogger.getLogger(
> Log4JLogger.java:283)
>        at org.apache.commons.logging.impl.Log4JLogger.<init>(
> Log4JLogger.java:108)
>        at sun.reflect.GeneratedConstructorAccessor21.newInstance(Unknown
> Source)
>        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
> DelegatingConstructorAccessorImpl.java:27)
>        at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
>        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(
> LogFactoryImpl.java:529)
>        ... 8 more
>
>


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org