Hi,

There is error in driverClassName.

Try use this:
driverClassName="oracle.jdbc.driver.OracleDriver"

Zdenek

On 7/18/07, "Julio J. Suárez Salinero" <[EMAIL PROTECTED]> wrote:
I'm Trying to connect a JSP tomcat-based application to Oracle using
OracleConnectionPoolDataSource and related classes. I have used
javax.sql.DataSource an it did work fine. I have made changes I need for
using that classes and when I get the DataSource it throws exception
"javax.naming.NamingException: Cannot create resource instance".

Changes I have made are these:

In context.xml:

<Context path="/test" docBase="test" debug="0"
reloadable="true" >
 <Resource
    name="jdbc/test" auth="Container"
    type="oracle.jdbc.pool.OracleConnectionPoolDataSource"
    maxActive="0" maxIdle="-1" maxWait="-1"
    removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"
    username="test" password="test"
    driverClassName="oracle.jdbc.pool.OracleConnectionPoolDataSource"
    url="jdbc:oracle:thin:@192.168.1.109:1521:GLOBALDB" />
</Context>

In web.xml (only resource-ref):

<resource-ref>
 <res-ref-name>jdbc/test</res-ref-name>
 <res-type>oracle.jdbc.pool.OracleConnectionPoolDataSource</res-type>
 <res-auth>Container</res-auth>
</resource-ref>

Code that creates connection:

 initCtx = new InitialContext();
 ctx = (Context) initCtx.lookup("java:/comp/env");
 fuenteDatos = (OracleConnectionPoolDataSource) ctx.lookup("/jdbc/test");
 PooledConnection pc = fuenteDatos.getPooledConnection();
 con = pc.getConnection();

I have searched in google and found some examples that use
oracle.jdbc.driver.OracleDriver in driverClassName. I have also tried
this option with the same results. I suppose bug is elsewhere.

I have tried to create DataSource instance in the code instead of get it
from resource. Doing this it drops no error and page works, but I don't
know how can I control maximun number of pooled connections. This is the
code I have used for that:

 initCtx = new InitialContext();
 OracleConnectionPoolDataSource fuenteDatos = new
OracleConnectionPoolDataSource();
 
fuenteDatos.setDataSourceName("oracle.jdbc.pool.OracleConnectionPoolDataSource");
 fuenteDatos.setURL(dbURL);
 fuenteDatos.setDescription(DS);
 fuenteDatos.setUser(dbUsuario);
 fuenteDatos.setPassword(dbPassword);
 initCtx.rebind(DS, fuenteDatos);
 pc = fuenteDatos.getPooledConnection();

But it creates only one connection and doesn't allow two users to log in
at the same time.

Please. I need help.


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to