1. 程式人生 > 實用技巧 >Spring監聽器與proxool.xml(資料庫連線池)

Spring監聽器與proxool.xml(資料庫連線池)

>>> hot3.png

Spring監聽器


Spring3 下使用proxool做連線池的時候出現異常
ERROR 2010-07-06 12:27:10,328 [org.logicalcobwebs.proxool.ProxoolDriver] [Problem]org.logicalcobwebs.proxool.ProxoolException: Attempt to refer to a unregistered pool by its alias 'ums'at org.logicalcobwebs.proxool.ConnectionPoolDefinition.doChange(ConnectionPoolDefinition.java:246)at org.logicalcobwebs.proxool.ConnectionPoolDefinition.<init>(ConnectionPoolDefinition.java:143)at org.logicalcobwebs.proxool.ProxoolFacade.registerConnectionPool(ProxoolFacade.java:96)at org.logicalcobwebs.proxool.ProxoolDriver.connect(ProxoolDriver.java:77)at java.sql.DriverManager.getConnection(DriverManager.java:582)at java.sql.DriverManager.getConnection(DriverManager.java:154)


org.springframework.web.context.ContextLoaderListener
載入先於proxool

解決辦法:將proxool 也改成listener載入並先於spring
由於proxool 還沒有listener的實現,所以自己寫了一個以listener方式載入proxool 的實現的補丁

點選下載 proxool-listenerCfg.jar

Xml程式碼

<servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>

<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

Web.xml配置改為:

Xml程式碼

<context-param>
<param-name>proxoolConfigLocation</param-name>


<param-value>WEB-INF/proxool.xml</param-value>
</context-param>
<listener>

<listener-class>org.logicalcobwebs.proxool.configuration.ListenerConfigurator</listener-class>
</listener>
<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

轉載於:https://my.oschina.net/javanx/blog/137818