找不到c3p0文件错误

时间:2015-02-05 08:46:01

标签: java servlets c3p0

我正在使用c3p0-0.9.2.1 jar,我的类路径和lib文件夹中有这个jar。 每当我第一次连接时,我都会收到此错误:

com.mchange.v2.cfg.DelayedLogItem [ level -> FINE, text -> "The configuration file for resource identifier '/mchange-commons.properties' could not be found. Skipping.", exception -> java.io.FileNotFoundException: Resource not found at path '/mchange-commons.properties'.]
com.mchange.v2.cfg.DelayedLogItem [ level -> FINE, text -> "The configuration file for resource identifier 'hocon:/reference,/application,/' could not be found. Skipping.", exception -> java.io.FileNotFoundException: HOCON lib (typesafe-config) is not available. Also, no resource available at '/reference,/application,/' for HOCON identifier 'hocon:/reference,/application,/'.]

我的应用程序运行正常。我无法判断这个错误是什么,我应该担心这个错误吗?如果是的话,如何删除这个错误。我做错了什么。

2 个答案:

答案 0 :(得分:4)

这些是DEBUG级别的消息,基本上记录了c3p0检查可以放置的所有不同位置的配置信息,并且通常在大多数这些地方找不到任何东西。 FileNotFoundExceptions是c3p0看不到的地方。

p3p0和com.mchange下的库通常用于记录INFO级别以供正常使用。如果您登录DEBUG或FINE,您可能会看到比您更喜欢的内容,包括在搜索配置文件期间完全无害的预期FileNotFoundExceptions。

答案 1 :(得分:1)

我查看了cp30包中的DelayedLogItem类,并调试了代码。

这个类似乎没有使用logback或任何记录器。实际上它与大多数记录器类似,它定义了自己的日志级别等。日志消息实际上是toString()方法的结果。

在调试过程中,我发现BasicMultiPropertiesConfig类正在尝试查找一些配置文件,当它没有调用方法{ "aggregations" : { "group by" : { "terms" : { "field" : "City" }, "aggregations" : { "top" : { "top_hits" : { "size" : 200 } }}}} 时,会将日志行输出到标准错误。

所以看起来没有办法使用任何记录器来捕捉'这些日志消息并根据您的记录器配置显示它。

顺便说一句,如果您配置,例如logback在com.mchange上进行TRACE日志记录,然后使用logback(包括stacktraces)进行日志记录。