my dog learned polymorphism
The moose likes JDBC and Relational Databases and the fly likes Problem Using DataSource and Creating Connection Pool Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » JDBC and Relational Databases
Bookmark "Problem Using DataSource and Creating Connection Pool" Watch "Problem Using DataSource and Creating Connection Pool" New topic

Problem Using DataSource and Creating Connection Pool

andre marcel

Joined: Jan 12, 2007
Posts: 3
hi all
I have 2 problems which I think could be connected.
I am using glassfish which is JavaServerApplication 9 compliant and ( am using HSQLDB driver for database. here are the problems:
1) I can not create a connection pool using the HSQLDB driver in the GUI of asadmin> resources>jdbc>connection pool. After supplying all details and when I ping the new connection the ping fails with the message: org.hsqldb.jdbcDriver.
This is the name of the class in the driver. The jar file of the db driver is already in lib directory of glassfish/javadb. so what am I doing wrong here?

2) the second problem has to do with using DataSource to make a connection instead of Class.forName(). I am still using HSQLDB and netbeans5.5 and glassfish. now this code works fine:

Connection connection = DriverManager.getConnection(url, user,password);

However when trying to use DataSource object to get a connection like this:

InitialContext ctx = new javax.naming.InitialContext();
DataSource ds = (javax.sql.DataSource)ctx.lookup("java:comp/env/jdbc/jspbook");
Connection connection = ds.getConnection();

I get the following exception:

javax.servlet.ServletException: javax.naming.NameNotFoundException: jspbook not found

And the root cause is:

javax.naming.NameNotFoundException: jspbook not found

jspbook is the name of the database.

Any idea what's wrong here?
thanks in advance
Muhammad Saifuddin
Ranch Hand

Joined: Dec 06, 2005
Posts: 1321

Originally posted by andre marcel:

Connection connection = DriverManager.getConnection(url, user,password);

what value your are passing in url variable?

[Blog][Linkedin] How To Ask Questions On JavaRanch My OpenSource
andre marcel

Joined: Jan 12, 2007
Posts: 3
Alright I managed to work around the DataSource part of the problem by using the embeded derby driver in the connection pool. I created a new data source in JDBC DataSource then did the binding in web.xml. And now I can use DataSource instead of Class.forName().
I know this might be elementary stuff to some. But I still can't add an external db driver to the connection pool and use it.
If anyone has an idea why it's such a problem or how to solve it I will appreciate their output.
thank you.
I agree. Here's the link:
subject: Problem Using DataSource and Creating Connection Pool
It's not a secret anymore!