`

Proxool连接池在reload web容器时出现HouseKeeper的空指针异常

    博客分类:
  • Java
阅读更多
使用Proxool连接池, 当在重启Tomcat容器时,出现



   Exception in Thread "HouseKeeper" java.lang.NullPointerException

空指针异常错误。

原因是:

写道
引用

This is because Proxool is not being shutdown properly. If the JVM stops then Proxool recognises that and shuts down gracefully, but if you redeploy Proxool into some environments (for example, a servlet container) then Proxool needs to be explicitly told so by calling ProxoolFacade.shutdown(). If you have a servlet container then you could put it in the servlet's destroy() method. Alternatively, use the ServletConfigurator to both configure and shutdown Proxool



解决方法如下:



    1. 在Servlet的destroy()方法中显式地proxool关闭连接池:ProxoolFacade.shutdown();

public class ProxoolServlet extends HttpServlet { 
    public void init() throws ServletException { 
    } 

    public void destroy() { 
        ProxoolFacade.shutdown(); 
    } 

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws 
        ServletException, IOException { 
        doGet(request,response); 
    } 
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws 
        ServletException, IOException { 
        
    } 

} 



  2. 将该Servlet配置到web.xml中:


 
 <servlet> 
    <servlet-name>proxoolServlet </servlet-name> 
    <servlet-class>xxx.ProxoolServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
  </servlet> 



  3. OK

分享到:
评论
1 楼 shuzheng5201314 2011-07-18  
如果不管这样的错误有影响吗?你这样貌似可行!

相关推荐

Global site tag (gtag.js) - Google Analytics