线程"PoolCleaner [{a number}]"中的异常;在雄猫 [英] Exception in thread "PoolCleaner[{a number}]" in tomcat

查看:675
本文介绍了线程"PoolCleaner [{a number}]"中的异常;在雄猫的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经使用apache CXF实现了Rest Web Service,并且已经设置了org.apache.tomcat.jdbc.pool中提供的Tomcat连接池.

I have implemented a Rest Web Service using apache CXF and I have set up the Tomcat's connection Pool provided in the org.apache.tomcat.jdbc.pool.

一切似乎都可以正常工作,我的连接池也可以正常工作,但是我一直在获取与PoolCleaner相关的异常.问题是我找不到何时发生此异常的特定模式.在我看来,这是随机的,有时与以前的有所不同.有时当我启动tomcat或其他时间访问或部署Web应用程序时会发生这种情况.

Everything seems to work fine and my connection pool works but I am keep getting an exception related to the PoolCleaner. The problem is that I cannot find a specific pattern on when this exception happens. It seems random to me and some times it different than the previous times. Sometimes happens when I start tomcat and other times when I access or deploy a web app.

这是我的变化形式所带来的例外

So here is the exception that I get with its variations

大多数时候我都得到这个:

Most of the times I get this:

Exception in thread "PoolCleaner[28224875:1372776292150]" java.lang.NullPointerException
    at org.apache.tomcat.jdbc.pool.ConnectionPool.unregisterCleaner(ConnectionPool.java:1296)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.access$400(ConnectionPool.java:57)
    at org.apache.tomcat.jdbc.pool.ConnectionPool$PoolCleaner.stopRunning(ConnectionPool.java:1364)
    at org.apache.tomcat.jdbc.pool.ConnectionPool$PoolCleaner.run(ConnectionPool.java:1341)
    at java.util.TimerThread.mainLoop(Timer.java:555)
    at java.util.TimerThread.run(Timer.java:505)

有时候我明白了

INFO: Illegal access: this web application instance has been stopped already.  Could not load org.apache.tomcat.jdbc.pool.FairBlockingQueue$FairIterator.  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:1566)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
    at org.apache.tomcat.jdbc.pool.FairBlockingQueue.iterator(FairBlockingQueue.java:233)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.testAllIdle(ConnectionPool.java:1034)
    at org.apache.tomcat.jdbc.pool.ConnectionPool$PoolCleaner.run(ConnectionPool.java:1352)
    at java.util.TimerThread.mainLoop(Timer.java:555)
    at java.util.TimerThread.run(Timer.java:505)

Exception in thread "PoolCleaner[6345204:1372865832250]" java.lang.NoClassDefFoundError: org/apache/tomcat/jdbc/pool/FairBlockingQueue$FairIterator
    at org.apache.tomcat.jdbc.pool.FairBlockingQueue.iterator(FairBlockingQueue.java:233)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.testAllIdle(ConnectionPool.java:1034)
    at org.apache.tomcat.jdbc.pool.ConnectionPool$PoolCleaner.run(ConnectionPool.java:1352)
    at java.util.TimerThread.mainLoop(Timer.java:555)
    at java.util.TimerThread.run(Timer.java:505)
Caused by: java.lang.ClassNotFoundException: org.apache.tomcat.jdbc.pool.FairBlockingQueue$FairIterator
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
    ... 5 more

关于为什么发生这种情况的任何想法?如何跟踪其根本原因?我该如何解决?

Any ideas on why this is happening? How can I track its root cause? How can I resolve it?

谢谢

推荐答案

发生这种情况是因为缺少jar文件或更改了jar文件的版本.

This will happen because of missing jar files or version of jar file is changed..

花了一天的时间,我得到了解决方案.

I got solution, after spend one day .

这篇关于线程"PoolCleaner [{a number}]"中的异常;在雄猫的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆