I guess, you are still closing the physical connection.
stat = rs.getStatement();
[b]con = stat.getConnection();[/b]
rs.close(); rs=null;
stat.close() ; stat = null;
con.setAutoCommit(true);
[b]con.close() ; [/b]
Since you close the physical connection and not the logical connection, connections are not returned to pool.
Set "wrap-jdbc-objects" to true for jdbc-connection-pool such that you do not get the physical connection when you call
"stat.getConnection()".
I guess, setting the attribute should help to solve your issue.
[Message sent by forum member 'jr158900' (jr158900)]
http://forums.java.net/jive/thread.jspa?messageID=285888