I tried c3p0 but .. I couldn't find any solution so I tried DBCP
right now my settings look like this :
Code:
<bean id="amsacDS" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/asda_asd</value>
</property>
<property name="username">
<value>assdfssad</value>
</property>
<property name="password">
<value>dfsfd</value>
</property>
<property name="maxIdle">
<value>8</value>
</property>
<property name="maxActive">
<value>20</value>
</property>
<property name="initialSize">
<value>5</value>
</property>
<property name="validationQuery">
<value>select 1</value>
</property>
<property name="testOnBorrow">
<value>true</value>
</property>
<property name="timeBetweenEvictionRunsMillis">
<value>600000</value>
</property>
<property name="testWhileIdle">
<value>true</value>
</property>
<property name="removeAbandoned">
<value>true</value>
</property>
<property name="logAbandoned">
<value>true</value>
</property>
<property name="removeAbandonedTimeout">
<value>100</value>
</property>
</bean>
when a connection goes stale this configuration has a validate query
which must validate a connection before handing it over to app ... ...
but in my case when MySQL drops conection .. the Data source returns the stale conection without Validating it...