Java PostgreSQL数据库没有';t连接

Java PostgreSQL数据库没有';t连接,java,eclipse,postgresql,tomcat,Java,Eclipse,Postgresql,Tomcat,我正在用eclipse创建一个动态web项目,我想使用Tomcat7.0.50和一个使用连接池的postgresql数据库。 我已经在apache-tomcat-7.0.50/lib中复制了postgresql-9.2-1003.jdbc4.jar文件。 这是apache-tomcat-7.0.50/conf中的context.xml文件: <?xml version='1.0' encoding='utf-8'?> <Context> <WatchedResour

我正在用eclipse创建一个动态web项目,我想使用Tomcat7.0.50和一个使用连接池的postgresql数据库。 我已经在apache-tomcat-7.0.50/lib中复制了postgresql-9.2-1003.jdbc4.jar文件。 这是apache-tomcat-7.0.50/conf中的context.xml文件:

<?xml version='1.0' encoding='utf-8'?>
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
 <Resource 
           type="javax.sql.DataSource"
           name="jdbc/Fantacalcio" 
           factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" 
           driverClassName="org.postgresql.Driver"
           url="jdbc:postgresql://localhost:5432/Fantacalcio" 
           username="postgres"
           password="mypassword"
           initialSize="0"
           maxActive="80" 
           maxIdle = "30" 
           minIdle="20"
           timeBetweenEvictionRunsMillis="30000"
           minEvictableIdleTimeMillis="60000"
           testOnBorrow="true"
           validationQuery="SELECT 1" 
           validationInterval="30000" 
           removeAbandoned="true"
           removeAbandonedTimeout="60" 
           logAbandoned="true" 
           abandonWhenPercentageFull="60"
       jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ResetAbandonedTimer"/>
</Context>
这是想要获得连接的servlet:

import java.sql.Connection;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ShowIndexServlet extends AbstractDatabaseServlet {
    private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException{

    Connection con = null;

    try {
        con = DS.getConnection();
        // use of connection con to interact with the database...

    } catch (SQLException ex) {
    } finally {
        if (con != null) {
            try {
                con.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
}

}
编辑:离开namingException后的完整堆栈跟踪

15-feb-2014 18.53.27 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java
15-feb-2014 18.53.27 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVVERTENZA: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:Fantacalcio' did not find a matching property.
15-feb-2014 18.53.27 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
15-feb-2014 18.53.27 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
15-feb-2014 18.53.27 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 610 ms
15-feb-2014 18.53.27 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
15-feb-2014 18.53.27 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.50
15-feb-2014 18.53.28 org.apache.tomcat.websocket.server.WsSci onStartup
INFO: JSR 356 WebSocket (Java WebSocket 1.0) support is not available when running on Java 6. To suppress this message, run Tomcat on Java 7, remove the WebSocket JARs from $CATALINA_HOME/lib or add the WebSocketJARs to the  tomcat.util.scan.DefaultJarScanner.jarsToSkip property in  $CATALINA_BASE/conf/catalina.properties. Note that the deprecated Tomcat 7 WebSocket API  will be available. 
15-feb-2014 18.53.28 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
15-feb-2014 18.53.28 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
15-feb-2014 18.53.28 org.apache.catalina.startup.Catalina start
INFO: Server startup in 1225 msjavax.naming.NamingException: Cannot create resource  instance
at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:146)
at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
at org.apache.naming.NamingContext.lookup(NamingContext.java:843)
at org.apache.naming.NamingContext.lookup(NamingContext.java:154)
at org.apache.naming.NamingContext.lookup(NamingContext.java:831)
at org.apache.naming.NamingContext.lookup(NamingContext.java:154)
at org.apache.naming.NamingContext.lookup(NamingContext.java:831)
at org.apache.naming.NamingContext.lookup(NamingContext.java:154)
at org.apache.naming.NamingContext.lookup(NamingContext.java:831)
at org.apache.naming.NamingContext.lookup(NamingContext.java:168)
at org.apache.naming.SelectorContext.lookup(SelectorContext.java:158)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at servlet.AbstractDatabaseServlet.<clinit>(AbstractDatabaseServlet.java:28)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at  sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:357)
at java.lang.Class.newInstance(Class.java:310)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:143)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:865)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:136)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
15-feb-2014 18.54.05 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [ShowIndexServlet] in context with path [/Fantacalcio] threw exception
java.lang.NullPointerException
at servlet.ShowIndexServlet.doGet(ShowIndexServlet.java:38)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
2014年2月15日18.53.27 org.apache.catalina.core.AprLifecycleListener init
信息:在java.library.path:.:/library/java/Extensions:/System/library/java/Extensions:/usr/lib/java上找不到基于APR的Apache Tomcat本机库,该库允许在生产环境中实现最佳性能
2014年2月15日18.53.27 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVVERTENZA:[SetPropertiesRule]{Server/Service/Engine/Host/Context}将属性“source”设置为“org.eclipse.jst.jee.Server:Fantacalcio”未找到匹配的属性。
2014年2月15日18.53.27 org.apache.coyote.AbstractProtocol init
信息:正在初始化ProtocolHandler[“http-bio-8080”]
2014年2月15日18.53.27 org.apache.coyote.AbstractProtocol init
信息:正在初始化ProtocolHandler[“ajp-bio-8009”]
2014年2月15日18.53.27 org.apache.catalina.startup.catalina负载
信息:初始化处理时间为610毫秒
2014年2月15日18.53.27 org.apache.catalina.core.StandardService startInternal
信息:开始服务Catalina
2014年2月15日18.53.27 org.apache.catalina.core.StandardEngine startInternal
信息:启动Servlet引擎:ApacheTomcat/7.0.50
2014年2月15日18.53.28 org.apache.tomcat.websocket.server.WsSci启动
信息:在Java 6上运行时,JSR 356 WebSocket(Java WebSocket 1.0)支持不可用。要抑制此消息,请在Java 7上运行Tomcat,从$CATALINA_HOME/lib中删除WebSocket jar,或将WebSocketjar添加到$CATALINA_BASE/conf/CATALINA.properties中的Tomcat.util.scan.DefaultJarScanner.jarsToSkip属性。请注意,不推荐使用的Tomcat 7 WebSocket API将可用。
2014年2月15日18.53.28 org.apache.coyote.AbstractProtocol启动
信息:正在启动ProtocolHandler[“http-bio-8080”]
2014年2月15日18.53.28 org.apache.coyote.AbstractProtocol启动
信息:正在启动ProtocolHandler[“ajp-bio-8009”]
2014年2月15日18.53.28 org.apache.catalina.startup.catalina start
信息:1225 msjavax.naming.NamingException中的服务器启动:无法创建资源实例
位于org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:146)
位于javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:843)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:154)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:831)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:154)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:831)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:154)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:831)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:168)
位于org.apache.naming.SelectorContext.lookup(SelectorContext.java:158)
在javax.naming.InitialContext.lookup(InitialContext.java:392)中
位于servlet.AbstractDatabaseServlet。(AbstractDatabaseServlet.java:28)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:513)
位于java.lang.Class.newInstance0(Class.java:357)
位于java.lang.Class.newInstance(Class.java:310)
位于org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:143)
位于org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)
位于org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:865)
位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:136)
位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
位于org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
位于org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)
位于org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
位于org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
位于org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
位于java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
运行(Thread.java:695)
2014年2月15日18.54.05 org.apache.catalina.core.StandardWrapper
GRAVE:Servlet[ShowIndexServlet]在路径为[/Fantacalcio]的上下文中的Servlet.service()引发异常
java.lang.NullPointerException
位于servlet.ShowIndexServlet.doGet(ShowIndexServlet.java:38)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
在org.apache.catalina.authenticator.AuthenticatorBase.invoke(Auth
import java.sql.Connection;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ShowIndexServlet extends AbstractDatabaseServlet {
    private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException{

    Connection con = null;

    try {
        con = DS.getConnection();
        // use of connection con to interact with the database...

    } catch (SQLException ex) {
    } finally {
        if (con != null) {
            try {
                con.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
}

}
15-feb-2014 18.53.27 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java
15-feb-2014 18.53.27 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVVERTENZA: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:Fantacalcio' did not find a matching property.
15-feb-2014 18.53.27 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
15-feb-2014 18.53.27 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
15-feb-2014 18.53.27 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 610 ms
15-feb-2014 18.53.27 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
15-feb-2014 18.53.27 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.50
15-feb-2014 18.53.28 org.apache.tomcat.websocket.server.WsSci onStartup
INFO: JSR 356 WebSocket (Java WebSocket 1.0) support is not available when running on Java 6. To suppress this message, run Tomcat on Java 7, remove the WebSocket JARs from $CATALINA_HOME/lib or add the WebSocketJARs to the  tomcat.util.scan.DefaultJarScanner.jarsToSkip property in  $CATALINA_BASE/conf/catalina.properties. Note that the deprecated Tomcat 7 WebSocket API  will be available. 
15-feb-2014 18.53.28 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
15-feb-2014 18.53.28 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
15-feb-2014 18.53.28 org.apache.catalina.startup.Catalina start
INFO: Server startup in 1225 msjavax.naming.NamingException: Cannot create resource  instance
at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:146)
at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
at org.apache.naming.NamingContext.lookup(NamingContext.java:843)
at org.apache.naming.NamingContext.lookup(NamingContext.java:154)
at org.apache.naming.NamingContext.lookup(NamingContext.java:831)
at org.apache.naming.NamingContext.lookup(NamingContext.java:154)
at org.apache.naming.NamingContext.lookup(NamingContext.java:831)
at org.apache.naming.NamingContext.lookup(NamingContext.java:154)
at org.apache.naming.NamingContext.lookup(NamingContext.java:831)
at org.apache.naming.NamingContext.lookup(NamingContext.java:168)
at org.apache.naming.SelectorContext.lookup(SelectorContext.java:158)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at servlet.AbstractDatabaseServlet.<clinit>(AbstractDatabaseServlet.java:28)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at  sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:357)
at java.lang.Class.newInstance(Class.java:310)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:143)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:865)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:136)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
15-feb-2014 18.54.05 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [ShowIndexServlet] in context with path [/Fantacalcio] threw exception
java.lang.NullPointerException
at servlet.ShowIndexServlet.doGet(ShowIndexServlet.java:38)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)