Please check whether you are closing all the connections. For this take a log of the ConnectionManager of JBoss which indicates how many connections are closed or alive or locked in the pool. One more thing i guess i have read there is some leakage of connection in 3.2.5 connection pooling in JBoss. Any way try getting the log of the managed connection pool of JBoss. Here is the piece of code you would want to add in log4j.xml. So that you get the log for the connection manager
<appender name="DbLogFile" class="org.jboss.logging.appender.RollingFileAppender">
<param name="File" value="${jboss.server.home.dir}/log/Connection.log"/>
<param name="Append" value="false"/>
<param name="MaxFileSize" value="500KB"/>
<param name="MaxBackupIndex" value="1"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m%n"/>
</layout>
</appender>
<category name="org.jboss.resource.connectionmanager">
<priority value="TRACE" class="org.jboss.logging.XLevel"/>
<appender-ref ref="MYFILE"/>
</category>
Regards
Sriram.P