Така че след като внимавате и получавате малко допълнителна помощ от форума на Oracle. Най-накрая разбирам защо горепосоченият код дава съобщението за грешка, което получавам. Вижте тук за отговор
Тъй като настройвам източника на данни всеки път, когато цикълът върви, по същество създавам повече от един пул. Начинът да направите това е да създадете един пул и след това да изтеглите връзки от този пул. Нов код за заместване на GetOracleConnection
Създадох единичен клас за източник на данни и в кода просто извличам връзката от източника на данни като такъв
Connection conn = Database.getInstance().GetPoolSource().getConnection();
package com.jam.DB;
import oracle.ucp.jdbc.PoolDataSource;
import oracle.ucp.jdbc.PoolDataSourceFactory;
public class Database {
private static Database dbIsntance;
private static PoolDataSource pds;
private Database() {
// private constructor //
}
public static Database getInstance() {
if (dbIsntance == null) {
dbIsntance = new Database();
}
return dbIsntance;
}
public PoolDataSource GetPoolSource() {
if (pds == null) {
pds = PoolDataSourceFactory.getPoolDataSource();
try {
pds.setConnectionFactoryClassName("oracle.jdbc.pool.OracleDataSource");
pds.setURL("jdbc:oracle:thin:@//localhost:1521/xe");
pds.setUser("system");
pds.setPassword("xxxx");
pds.setMaxStatements(15);
return pds;
} catch (Exception e) {
}
return pds;
}
return pds;
}
}