Hi
We are facing Connection used up every 15 minutes on
We suspect the jboss server is not releasing the JDBC connection
on using the close() method
JBOSS 4.2.1 or 4.2.3
JDK1.5.x
O/s Linux Redhat
Jdbc jar : ojdbc14.jar
Or am I missing any thing ?
Please some body help me
The code is as shown below
//Oracle-ds.xml
<local-tx-datasource>
<jndi-name>jdbc/OrclVOISE5000</jndi-name>
<connection-url>jdbc:oracle:thin:@172.16.18.22:1521:GTS22</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>tt_VOISE50</user-name>
<password>tt_VOISE50</password>
<min-pool-size>20</min-pool-size>
<max-pool-size>80</max-pool-size>
<blocking-timeout-millis>500</blocking-timeout-millis>
<idle-timeout-minutes>1</idle-timeout-minutes>
<track-statements>false</track-statements>
<metadata>
<type-mapping>Oracle10g</type-mapping>
</metadata>
</local-tx-datasource>
// global Declared Variables
DataSource ODS = null;
WrappedConnection WCP = null;
//Singleton Pattern
public static synchronized public DBConnectionManager getInstance() throws Exception {
if (instance == null) {
instance = new DBConnectionManager();
}
return instance;
}
//Constructer
private DBConnectionManager() throws Exception {
String DSNAME = InfinetUtility.getProperty("DSNAME").trim();
System.out.println("DATASOURCE JNDI NAME
:===>|"+DSNAME+"|<=====");
InitialContext ic = null;
try {
ic = new InitialContext();
ODS = (javax.sql.DataSource) ic.lookup(DSNAME);
} catch (NamingException e) { e.printStackTrace();}
}
//fetch connection
public synchronized Connection getConnection(){
Connection conn = null;
Connection underlyingConn = null;
OracleConnection connection= null;
try {
conn = ODS.getConnection();
WCP = (WrappedConnection)conn;
underlyingConn = WCP.getUnderlyingConnection();
conn = (OracleConnection)underlyingConn;
} catch (SQLException sqlex) {
System.out.println("<<<<<<<<<<< NO
CONNECTION>>>>>>>>>>>>" + sqlex.getMessage()
}
return conn;
}
//Connection close
public void freeConnection(Connection con) {
System.out.println("RELEASING THE USED CONNECTION TO POOL");
try {
con.close();
}catch (Exception e) {
e,printStackTrace();
}
}