Java Connection Pooling issue with Oracle 10g Express Edition
526743Aug 15 2006 — edited Aug 16 2006Hello
I have a Java based web application that uses the Oracle 10g Express Edition database. I am using a connection pool to get connections to the database.
I use the NetBeans IDE and run my web application on the bundled Tomcat server(5.5.7) that comes with the IDE. Though when I initially run the application from the IDE, the connection pool is set up fine, when I recompile my java code and try to run the application again, I get the following error each time:
Listener refused the connection with the following error:
ORA-12516, TNS:listener could not find available handler with the
matching protocol stack.
The logs before the error shows up, indicate that the connection pool object is fine and gives me the number of available connections and the number of active connections and so on, which I have printed from the constructor of the Connection Pool class:
For e.g.:
Cache size = 17
Available Connections = 17
Cache Limit = 1000
Active size = 0
However, if I kill my Tomcat server process and run the application again, it works fine with no error.
I looked around for possible causes and solutions and all I could find
was increasing the processes parameter value in the init.ora file. I have increased the parameter value to from 100 to 20000 now, in increments of 500/1000 each time but it hasnt worked so far.
Someone else suggested that I increase the size of my connection pool; I initially had it set to a minimum limit of 5, an initial limit of 10 and a maximum limit of 1000. However if I set the Initial Limit to anything above 17 connections, I see the following log on the Bundled Tomcat log and my application doesn't run at all:
Log: Loading JDBC Driver : class=oracle.jdbc.driver.OracleDriver ...
Log: Loaded JDBC Driver
Log: Connection with URL=jdbc:oracle:thin:@localhost:1521:xe as username/password
Error code not handled : 0
Exception Message :java.sql.SQLException: Listener refused the connection with the following error:
ORA-12519, TNS: no appropriate service handler found
The Connection descriptor used by the client was:
localhost:1521:xe
// End of log
And the Bundled Tomcat server automatically shuts down.
Again the System.out statements from the Connection Pool class constructor show that the cache has been initialized and that currently there are free connections available in the pool.
E.g.
Cache size = 18
Available Connections = 18
Cache Limit = 1000
Active size = 0
Has anyone faced anything similar? Could someone please suggest what I'm doing wrong here and what I should do to set right this problem?
Swetha