Hi, I have an application that pulls Oracle data onto a web form. In our test environment that Oracle db only allows 38 processes. I'm finding that after an hour or so of testing I receive the error above which seems to imply that I'm not completely closing the connection ... but I think I am closing everything...
My data access class has a constructor that opens a db connection and statement object. And my finalize calls a method of the data access class that closes everything up. I've printed log statements that show that the statement and resultSet objects are closed when all is done and that the driver is deregistered. Does anybody know what would cause this error?
Here's an excerpt from my constructor (DRV, CON and ST have class scope):
String url = "jdbc racle ci:@myDBName";
String driver = "oracle.jdbc.OracleDriver";
Properties p = new Properties();
DRV = (Driver) Class.forName(driver).newInstance();
p.put("user", "xxxxx");
p.put("password", "xxxxx");
CON = DRV.connect(url, p);
ST = CON.createStatement();
and an excerpt from my finalize:
RS.close();
ST.close();
DriverManager.deregisterDriver(DRV);
If anyone can tell me what I'm doing wrong (or help me to better understand what Oracle means by an open process) I would GREATLY appreciate it! Thanks.
My data access class has a constructor that opens a db connection and statement object. And my finalize calls a method of the data access class that closes everything up. I've printed log statements that show that the statement and resultSet objects are closed when all is done and that the driver is deregistered. Does anybody know what would cause this error?
Here's an excerpt from my constructor (DRV, CON and ST have class scope):
String url = "jdbc racle ci:@myDBName";
String driver = "oracle.jdbc.OracleDriver";
Properties p = new Properties();
DRV = (Driver) Class.forName(driver).newInstance();
p.put("user", "xxxxx");
p.put("password", "xxxxx");
CON = DRV.connect(url, p);
ST = CON.createStatement();
and an excerpt from my finalize:
RS.close();
ST.close();
DriverManager.deregisterDriver(DRV);
If anyone can tell me what I'm doing wrong (or help me to better understand what Oracle means by an open process) I would GREATLY appreciate it! Thanks.