commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ondrej Tisler (JIRA)" <>
Subject [jira] Commented: (DBCP-309) First example for FSContext is invalid
Date Wed, 02 Dec 2009 13:06:22 GMT


Ondrej Tisler commented on DBCP-309:

I use this code for registring JNDI inFSContext:
      // JNDI with datasource
      InitialContext ic = new InitialContext();
      // Construct BasicDataSource reference
      Configuration poolConfig = dbConfig.subset("datasource");
      DriverAdapterCPDS cpds = new DriverAdapterCPDS();
      SharedPoolDataSource ds = new SharedPoolDataSource();
      ds.setDefaultAutoCommit(poolConfig.getBoolean("connection.defaultAutoCommit", true));
      ic.rebind(poolConfig.getString("[@jndi]"), ds);"JNDI datasource is inicialized");

next you can normaly use JNDI lookup:
      InitialContext ic2 = new InitialContext();
      ds = (DataSource) ic2.lookup(poolConfig.getString("[@jndi]"));
      conn = ds.getConnection();

> First example for FSContext is invalid
> --------------------------------------
>                 Key: DBCP-309
>                 URL:
>             Project: Commons Dbcp
>          Issue Type: Bug
>    Affects Versions: 1.2.2
>            Reporter: Ondrej Tisler
>            Priority: Trivial
> First example on page is invalid,
with this code every call of  
>   InitialContext ic2 = new InitialContext();
>   DataSource ds = (DataSource) ic2.lookup("jdbc/basic");
>   Connection conn = ds.getConnection();
>   conn.close();
> ends with new datasource with unclosed connection in it becase new Reference("javax.sql.DataSource",
 "org.apache.commons.dbcp.BasicDataSourceFactory", null); reference creates new DataSource
instead using created one while calling  ic2.lookup("jdbc/basic").
> At the end it ends with many opened connections to DB until JVM is ended.
> Second example I didn't test, i use direct aproach with manualy creating SharedPoolDataSource
and registring it in FSContext JNDI itself.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message