【问题标题】:Multiple applications having c3p0 configuration gives warning具有 c3p0 配置的多个应用程序发出警告
【发布时间】:2011-05-06 01:16:19
【问题描述】:


我在一个 tomcat 下有两个 Web 应用程序。两者都使用休眠 3.2.1 和 c3p0 0.9.1.2。在部署第二个应用程序时,我总是收到以下警告消息。
Tomcat:apache-tomcat-6.0.28

警告 2010-11-06 19:04:37,270 C3P0Registry mbean 已注册。这可能意味着使用 c3p0 的应用程序已取消部署,但并非所有 PooledDataSources 在取消部署之前都已关闭。随着时间的推移,这可能会导致资源泄漏。请注意关闭所有 PooledDataSources。

请在这方面提供帮助。

提前致谢
古拉

【问题讨论】:

    标签: hibernate c3p0


    【解决方案1】:

    如果你不想要c3p0 exposed through JMX,那么你可以这样做:

    com.mchange.v2.c3p0.management.ManagementCoordinator=com.mchange.v2.c3p0.management.NullManagementCoordinator
    

    【讨论】:

    • 感谢您的回复。我应该在哪里添加这个 ManagementCoordinator 参数?
    • 在您的 c3p0.properties 或 c3p0-config.xml 中。虽然不知道如何在 hibernate.cfg.xml 中做到这一点。
    • 我认为通过休眠是不可行的。只需使用上面的配置行添加一个 c3p0.properties。
    【解决方案2】:

    为了避免C3P0Registry 被多次加载和注册(部署多个 web 应用程序时,重新加载给定的 web 应用程序时),我的建议是从 Web 应用程序中移动 C3P0 JAR(和 JDBC 驱动程序) 类加载器 (WebappX/WEB-INF/lib) 到 Common 类加载器 ($TOMCAT_HOME/lib)。

    【讨论】:

      猜你喜欢
      • 2022-12-12
      • 2011-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-08
      • 1970-01-01
      • 2020-12-24
      相关资源
      最近更新 更多