pcf.setDefaultTransactionIsolation( isolationLevel.value() );
private PoolableConnectionFactory initializeConnectionFactory(int type, int maxActive, RepositoryConnectionConfiguration configuration) { // Will use in jndi // DataSource ds = (DataSource) ctx.lookup(RepositoryProperties.getDatabaseJndiName(properties)); try { Class.forName(configuration.getDriverClassName()); } catch (ClassNotFoundException e1) { throw new BocaRuntimeException(ExceptionConstants.DB.CODES.INVALID_CONFIG_ERROR, ExceptionConstants.DB.SUBCODES.DRIVER_NAME, e1, configuration.getDriverClassName()); } ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(configuration.getJDBCUrl(), configuration.getUser(), configuration.getPassword()); connectionPool = new GenericObjectPool(); connectionPool.setMaxActive(maxActive); connectionPool.setMinIdle(1); connectionPool.setWhenExhaustedAction(GenericObjectPool.WHEN_EXHAUSTED_BLOCK); connectionPool.setMaxWait(30000); connectionPool.setMaxActive(maxActive); //KeyedObjectPoolFactory statementPool = new GenericKeyedObjectPoolFactory(null, 1000); pcf = new PoolableConnectionFactory(connectionFactory, connectionPool, null, null, false, true);// (type == // RepositoryConnection.RO // || type // == // RepositoryConnection.QUERY), // true); if ((type == RepositoryConnection.RO || type == RepositoryConnection.QUERY)) pcf.setDefaultTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED); return pcf; } }