Try this code instead:

Context ctx = new InitialContext();
if (ctx == null) {
System.err.println("Conn.getConn ctx is null");
throw new Exception("Boom - No Context");
}
DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/dbName");
if (ds != null)
connection = ds.getConnection();

I run this from a class. I have several util classes that handle my database
queries and thus in my jsps and servlets I simly call the util class with a
simple string. But we'll save that for another time.


As for the code in the web.xml, it is fine.

Doug

----- Original Message ----- 
From: "Daxin Zuo" <[EMAIL PROTECTED]>
To: "Tomcat Users List" <[EMAIL PROTECTED]>
Sent: Sunday, May 02, 2004 3:07 PM
Subject: RE: Please help on my DB pool problem --- I followed the struction
on the web


> Should I put it in tomcat\webapps\ROOT\WEB-INF\web.xml? (my jsp file using
> Database connection is in ROOT/zuo), but in this web.xml, I already have:
> <resource-ref>
> <description>SQL Server DataSource</description>
> <res-ref-name>jdbc/dbName</res-ref-name>
> <res-type>com.microsoft.jdbcx.sqlserver.SQLServerDataSource</res-type>
> <res-auth>Container</res-auth>
> </resource-ref>
>
>    Following the examples on the web, I wrote the java code in JSP:
> envCtx = (Context) initCtx.lookup("java:comp/env");
> ds = (ConnectionPoolDataSource ) envCtx.lookup("jdbc/dbName");  // <---
> error occurs here
> if (ds != null){
>    if(ds instanceof com.microsoft.jdbcx.sqlserver.SQLServerDataSource){
>        SQLServerDataSource temp =
> (com.microsoft.jdbcx.sqlserver.SQLServerDataSource)ds;
> con = temp.getPooledConnection(user,pswd).getConnection();
> now the error occurs at envCtx.lookup. the error is: Cannot create
resource
> instance
>
> Thanks.
>
> -----Original Message-----
> From: Parsons Technical Services [mailto:[EMAIL PROTECTED]
> Sent: Friday, April 30, 2004 4:42 PM
> To: Tomcat Users List
> Subject: Re: Please help on my DB pool problem --- I followed the
> struction on the web
>
>
> Daxin,
>
> When you put the dbcp in the GlobalResource did you put a link to the
> resource in the context?
>
> Place this in the context for each app that will use the database
connection
> pool.
> <ResourceLink name="jdbc/dbName" global="jdbc/dbName"
> type="com.microsoft.jdbcx.sqlserver.SQLServerDataSource"/>
>
> In the last email that I sent in addition to the link, was a complete
> working set of configurations. Each piece of the configuration was labeled
> as to where to add it. Remove all your old attempts and start from the
> beginning. If you made a backup of your original files use them. Then put
in
> each piece and modify with your information.
>
> Let us know.
>
> Doug
>
>
> ----- Original Message -----
> From: "Daxin Zuo" <[EMAIL PROTECTED]>
> To: "Tomcat Users List" <[EMAIL PROTECTED]>
> Sent: Friday, April 30, 2004 2:05 PM
> Subject: RE: Please help on my DB pool problem --- I followed the
struction
> on the web
>
>
> > 1)I added it and still get the same error. the error occurred at con =
> > ds.getConnection(); error:Cannot create JDBC driver of class '' for
> connect
> > URL 'null'
> > 2) I also followed the way in the link that forwarded by Persons
Technical
> > Services. In that configuration, it used com.microsoft.jdbcx.sqlserver.
If
> I
> > still use javax.sql.DataSource in my JSP file, I got the same error. If
I
> > use com.microsoft.jdbcx.sqlserver in my JSP file, the error occurred at
> > lookup the source.
> > But I did not use <context>. I moved the DB pool context into
> > <GlobalNamingResources>. The block is for JNDI global name.
> > 3) I also add the database name as Eric indicated. It does not effect.
> > 4) if I remove the db pool configuration in server.xml( web.xml still
has
> > the configuration), I got the same error.
> >
> > 5) if I remove the db pool configuration in
> > tomcat\webapps\ROOT\WEB-INF\web.xml, the error is Name jdbc is not bound
> in
> > this Context.
> >
> > My jsp file is in tomcat\webapps\ROOT\zuo, and in tomcat\webapps\ROOT,
> same
> > error.
> >
> > It seems the configuration in tomcat/conf/server.xml is incorrect.
Should
> I
> > write some thing in different file?
> > If I should write the text in <context> (right now no this block in
> > server.xml), how to set the  path and  docBase if my file is in
> > tomcat\webapps\ROOT\zuo\. But I think put the configuration text in
> > <GlobalNamingResources> is the right place.
> > I am using  Apache 2.0.49+Tomcat 5.0.19+windows 2000/Unix/Linux+MS SQL
> > server 2000 + sp4, is there another better jdbc driver with the
> > configuration tricks?
> > Please help.
> > Thanks.
> >
> > -----Original Message-----
> > From: STOCKHOLM, Raymond [mailto:[EMAIL PROTECTED]
> > Sent: Friday, April 30, 2004 12:22 AM
> > To: Tomcat Users List
> > Subject: RE: Please help on my DB pool problem --- I followed the
> > struction on the web
> >
> >
> > I didn't see your factory in your server.xml
> > <ResourceParams name="jdbc/DBName">
> >
> > Try adding :
> > <parameter>
> > <name>factory</name>
> > <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
> > </parameter>
> >
> >
> >
> > -----Message d'origine-----
> > De : Daxin Zuo [mailto:[EMAIL PROTECTED]
> > Envoyé : vendredi 30 avril 2004 00:55
> > À : Tomcat Users List
> > Objet : Please help on my DB pool problem --- I followed the struction
> > on the web
> >
> >
> > I have problem in using connection pool. I use Apache 2.0.49, Tomcat
> > 5.0.19, windows 2000 server, MS SQL server 2000 + sp4
> > On the browser I see the
> > error: Cannot create JDBC driver of class '' for connect URL 'null'
> > on Tomcat monitor, I see the message:
> > Apr 29, 2004 3:36:25 PM org.apache.jk.common.HandlerRequest
decodeRequest
> > WARNING: Error registering request
> >
> > The url and driver class is not find. bellow is my configuration. Please
> > forward instruction. Thanks a
> > lot.
> >
> > 1) I copy the three jar files to \common\lib in %catalina_home% from
> > C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC
> >
> > 2) MY webapps/ROOT/web-inf/web.xml is:
> > ...
> > <resource-ref>
> > <description> JDBC Driver:
> > com.microsoft.jdbc.sqlserver.SQLServerDriver</description>
> > <res-ref-name>jdbc/DBName</res-ref-name>
> > <res-type>javax.sql.DataSource</res-type>
> > <res-auth>Container</res-auth>
> > </resource-ref>
> >   </web-app>
> >
> > 3) my JSP file is in /ROOT, it contains code:
> >       <%@ page import="java.sql.*" %>
> >   <%@ page import="java.lang.reflect.*" %>
> > <%@ page import="java.io.*" %>
> > <%@ page import="javax.naming.*" %>
> >       ......
> >   <%.....
> > Connection con = null;
> > PreparedStatement pStateSearch=null;
> > Context                     initCtx;
> > Context                     envCtx;
> > javax.sql.DataSource        ds;
> > initCtx = new InitialContext();
> > envCtx = (Context) initCtx.lookup("java:comp/env");
> > ds = (DataSource)envCtx.lookup("jdbc/DBName");
> > con       = ds.getConnection();
> > ....%>
> >
> > 4) my apache2/conf/server.xml is
> > <Resource name="jdbc/DBName" auth="container"
> > type="javax.sql.DataSource"/>
> > <ResourceParams name="jdbc/DBName">
> > <!-- Maximum number of dB connections in pool. Set to 0 for no limit.-->
> > <parameter>
> > <name>maxActive</name>
> > <value>8</value>
> > </parameter>
> >
> > <!-- Maximum number of idle dB connections to retain in pool.Set to 0
for
> > no limit.-->
> > <parameter>
> > <name>maxIdle</name>
> > <value>4</value>
> > </parameter>
> >
> > <!-- Maximum time to wait for a dB connection to become available
> > in ms, in this example 10 seconds. An Exception is thrown if
> > this timeout is exceeded. Set to -1 to wait indefinitely.
> > -->
> > <parameter>
> > <name>maxWait</name>
> > <value>10000</value>
> > </parameter>
> >
> > <!--parameter>
> > <name>removeAbandoned</name>
> > <value>true</value>
> > </parameter>
> >
> > <parameter>
> > <name>removeAbandonedTimeout</name>
> > <value>60</value>
> > </parameter-->
> >
> >
> > <!-- MS Sql Server dB username and password for dB connections-->
> > <parameter>
> > <name>user</name>
> > <value>dzuo</value>
> > </parameter>
> >
> > <parameter>
> > <name>password</name>
> > <value>dzuo</value>
> > </parameter>
> >
> > <!-- Class name for MS Sql Server JDBC driver
> > -->
> > <parameter>
> > <name>driverClassName</name>
> > <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
> > </parameter>
> >
> > <!-- The JDBC connection url for connecting to MS Sql Server dB.-->
> > <parameter>
> > <name>url</name>
> > <value>jdbc:microsoft:sqlserver://DBServerName:1433</value>
> > </parameter>
> >
> > <!-- This Databae Connection Pool Description.-->
> > <parameter>
> > <name>description</name>
> > <value> JDBC Driver:
com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
> > </parameter>
> >
> > </ResourceParams>
> >       </Host>
> >     </Engine>
> >   </Service>
> > </Server>
> >
> > Thanks a lot
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to