日志:
java.util.NoSuchElementException: Timeout waiting for idle object
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:801)
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:140)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:518)
at DBManager.DBManager.getDB_Connection(DBManager.java:21)
at DBManager.DBManager.getDB_returnArrayListSelect(DBManager.java:62)
at com.yourcompany.struts.action.IsWhichWebAction.execute(IsWhichWebAction.java:69)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:425)
at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:452)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1285)
at java.lang.Thread.run(Unknown Source)
用了DBCP连接池,TOMCAT服务器,微软驱动 过一段时间后,就抛这个异常,服务器就当机...怎么解决啊?

解决方案 »

  1.   

    过一段时间?
    那你把池设大一点看看
    那样里面可以放多一点connection
      

  2.   

    数据库联接的timeout设的太短了吧?
      

  3.   

    是不是connection用了没关啊,一定要显示关闭的,放在finally代码快中关闭
      

  4.   

    连接都关了啊.... 我没有用  finally   只有try...catch...但是在try和catch中...我都有关闭连接..这和finally  差不多吧..所以不是数据库连接没有关闭的问题!
    timeout 这么设置? <set-property property="timeout" value="10000" /> 这样嘛?
      

  5.   

    最好还是在FINALLY里面关吧!不关链接池太恐怖了!