`

当在重启Tomcat容器时 Exception in Thread "HouseKeeper" java.lang.NullPointerException

阅读更多

使用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();

 

Java代码 复制代码
  1. public class ProxoolServlet extends HttpServlet {    
  2.     public void init() throws ServletException {    
  3.     }    
  4.   
  5.     public void destroy() {    
  6.         ProxoolFacade.shutdown();    
  7.     }    
  8.   
  9.     public void doPost(HttpServletRequest request, HttpServletResponse response) throws    
  10.         ServletException, IOException {    
  11.         doGet(request,response);    
  12.     }    
  13.     public void doGet(HttpServletRequest request, HttpServletResponse response) throws    
  14.         ServletException, IOException {    
  15.            
  16.     }    
  17.   
  18. }   
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中:

 

Java代码 复制代码
  1. <servlet>    
  2.   <servlet-name>proxoolServlet </servlet-name>    
  3.   <servlet-class>xxx.ProxoolServlet</servlet-class>    
  4.   <load-on-startup>1</load-on-startup>    
  5. </servlet>   
  <servlet> 
    <servlet-name>proxoolServlet </servlet-name> 
    <servlet-class>xxx.ProxoolServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
  </servlet> 

 

    3. OK

分享到:
评论
1 楼 22199143 2013-08-27  

相关推荐

    family-housekeeper-system.rar_family

    在当今快节奏的生活中,家庭管理变得越来越重要,而科技的进步使得这一任务变得更加便捷。"家庭管家系统"就是这样一款以VB(Visual Basic)编程语言构建的软件,它专为解决家庭日常管理问题而设计,帮助家庭成员实现...

    Python库 | housekeeper-2.6.0.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:housekeeper-2.6.0.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Zabbix 进程占用75%优化.pdf

    在实际使用过程中,有时会出现某些Zabbix进程(如icmp pinger、poller、housekeeper等)占用资源过高(超过75%)的情况,这不仅会影响系统的稳定性和响应速度,还可能导致监控数据丢失或延迟等问题。本文将针对这些...

    Sybase ASE 15.7 开发文档:系统管理指南(卷一)

    安装 Sybase 产品时的注意事项 .......... 31 检查产品的兼容性 .......... 31 安装或升级 Adaptive Server .......... 31 安装其它第三方软件 .......... 31 配置并测试客户端连接 .......... 32 分配物理资源 .......

    housekeeper

    8. **线程和进程**:为了实现并发处理,Python的`threading`或`multiprocessing`库可能被用到,尤其是在处理多任务时。 9. **数据库交互**:如果项目需要存储或检索数据,Python可能连接到MySQL(`pymysql`)、...

    用JAVA中的UML绘制类图参考

    在JAVA开发中,UML类图是一种关键的工具,它直观地展示了类与类之间的关系,如继承、关联、聚合、组合等。以下是对JAVA中使用UML绘制类图的详细解释。 1. **类的表示**: 在UML类图中,类通常被表示为一个矩形,...

    Proxool 在 Hibernate 中的典型配置

    Proxool是一种Java数据库连接池技术,由SourceForge提供支持,作为开源项目,其设计目标是为Java应用提供一个健壮且易用的数据库连接管理方案。Proxool连接池特别强调易用性和监控功能,使得开发者能够容易地发现...

    Housekeeper-开源

    随着信息技术的迅速发展,开源软件在市场上的影响力日益增强。它们凭借开源特性,不仅促进了技术的交流与创新,更为用户提供了极大的便利。今天,我们要介绍的是一款专注于家庭管理的开源软件——Housekeeper。...

    基于ssm+jsp家政服务网站源码数据库.zip

    4. **实体类**:代表数据库中的表,如`HouseKeeper.java`,表示家政服务员的实体类。 5. **Mapper接口**:定义SQL操作,如`HouseKeeperMapper.java`。 6. **Mapper XML文件**:包含具体的SQL语句,对应Mapper接口,...

    WAS 内存溢出分析

    最终发现线程HouseKeeper在2017年12月21日3点26分左右发生了OOM(Out Of Memory)错误。进一步分析OOM错误日志SystemOut.log,发现与之前heapdump分析结果一致,LMSentity.TransInfo服务触发了java.util.concurrent...

    zero-start

    在"HouseKeeper"这个压缩包中,可能包含了该项目的主要代码和配置文件。根据项目名称,我们可以猜测这可能是一个关于家庭管理或者物业管理的系统。在实际项目中,可能会涉及到用户管理、房源信息管理、租赁管理等...

    picture_housekeeper:图片档案的清理

    9. 安全性:在进行清理操作时,工具应提供确认提示,防止误删重要文件。此外,可能还会有撤销功能,以备不时之需。 10. 教程与文档:为了帮助用户更好地理解和使用 `picture_housekeeper`,开发者通常会提供详细的...

    proxool连接池配置详解

    - **配置细节**:如果设置为`true`,则在发生SQL异常时,Proxool会将其包装为`FatalSQLException`或`FatalRuntimeException`,这取决于`fatal-sql-exception-wrapper-class`的配置值。 - **示例配置**: ```...

    基于STM32+ESP8266+LD3320开发的智能物联家居产品HouseKeeper,以根据需求方便的扩展各种家居家电控制

    HouseKeeper_V1.0 是一款智能物联家居产品,它可以根据需求方便的扩展各种家居家电控制,例如门的控制,窗帘的控制,和一些其他家电的控制,只需要简单外接一个继电器便可。本次我们将用指纹门锁控制,来阐述...

    Proxool-0.9.1

    3.解决与spring配合时,只能在spring的定义中以bean方式加载proxool的问题。(使用servlet方式加载也可以,只是在启动时报错) 加载方式修改为: &lt;!-- proxool --&gt; &lt;param-name&gt;xmlFile &lt;param-value&gt;/WEB-...

    zabbix介绍和记录.docx

    告警策略允许用户设定阈值,当监控数据超过预设值时,Zabbix会触发告警,并通过邮件、短信等方式通知管理员。事件管理功能则帮助跟踪和解决这些问题,确保系统的稳定运行。 报表管理是Zabbix的另一个重要特性,它...

    HouseKeeper:创造新的生命守护者-开源

    在使用HouseKeeper时,用户可能会遇到以下知识点: 1. **安装与配置**:学习如何下载源代码,使用构建工具进行编译,以及在不同操作系统上进行安装和配置。 2. **功能使用**:掌握如何创建任务,设置优先级,添加...

    四六级听力考试高频词汇分类记忆-日常生活类.doc

    在准备四六级听力考试的过程中,了解和掌握与日常生活相关的高频词汇是至关重要的。这些词汇不仅涵盖购物消费、居家琐事、日常交往、休闲娱乐以及外出就餐等方面,而且在实际生活中也非常常见。以下是对这些词汇的...

Global site tag (gtag.js) - Google Analytics