It was this David. 5.0 is a little different.  Thanks to all that helped
out!


<Context debug="4"
docBase="C:/Java/eclipse-europa/europa-workspace/bop-med/web"
path="/bop-med" reloadable="true"
workDir="work\Catalina\localhost\bop-med">
 <Resource name="jdbc/medical"
                   auth="Container"
                   type="javax.sql.DataSource"/>
    
      <ResourceParams name="jdbc/medical">
        <parameter>
          <name>maxActive</name>
          <value>10</value>
        </parameter>
        <parameter>
          <name>maxIdle</name>
          <value>1</value>
        </parameter>
        <parameter>
          <name>maxWait</name>
          <value>10000</value>
        </parameter>
        <parameter>
         <name>username</name>
         <value>user</value>
        </parameter>
        <parameter>
         <name>password</name>
         <value>password</value>
        </parameter>
        <parameter>
           <name>driverClassName</name>
           <value>com.ibm.db2.jcc.DB2Driver</value>
        </parameter>
        <parameter>
          <name>url</name>
          <value>jdbc:db2://server:50000/medical</value>
        </parameter>
  </ResourceParams>
</Context>

Also Chris we still use 5.0 tomcat because we are still on Java 1.4,
although we will on Java 5 very soon. We are stuck in the past 
like a Simon and Simon re-run...

Tom

-----Original Message-----
From: David Smith [mailto:[EMAIL PROTECTED] 
Sent: Friday, March 28, 2008 10:19 AM
To: Tomcat Users List
Subject: Re: Tomcat JNDI datasource

Just had a brainstorm while responding on another post.

The docs for 5.0.30 should describe defining a resource in terms of a 
<Resource ... /> element and a <ResourceParams>....</ResourceParams> 
element.  The resource as setup below is only correct for version 5.5.x 
and later.

--David

Tom Henricksen wrote:

>I have an application in Tomcat 5.0.30 that we are trying to get to use
>JDBC through JNDI. 
>
>I am trying to follow along with
>akarta-tomcat-5.0.30/webapps/tomcat-docs/jndi-datasource-examples-howto
.
>html.
>
> 
>
>I have setup the context.xml
>
> 
>
>            <Context debug="4"
>docBase="C:/Java/eclipse-europa/europa-workspace/bop-med/web"
>path="/bop-med" reloadable="true"
>workDir="work\Catalina\localhost\bop-med">
>
>                <Resource name="jdbc/medical" 
>
>                        type="javax.sql.DataSource"
>
>                        password="password" 
>
>                        driverClassName="com.ibm.db2.jcc.DB2Driver" 
>
>                        maxIdle="2"
>
>                        maxWait="5000"
>
>                        validationQuery="select * from
sysibm.SYSDUMMY1"
>
>                        username="user"
>
>                        url="jdbc:db2://server:50000/db" 
>
>                        maxActive="4"/>
>
>            </Context>
>
>            
>
>And I have setup the web.xml with 
>
> 
>
>            <resource-ref>
>
>                        <description>DB Connection</description>
>
>                    <res-ref-name>jdbc/medical</res-ref-name>
>
>                    <res-type>javax.sql.DataSource</res-type>
>
>                    <res-auth>Container</res-auth>
>
>            </resource-ref>
>
> 
>
> When I call the following code
>
> 
>
>            initCtx = new InitialContext();
>
> 
>
>            Context envCtx = (Context) initCtx.lookup("java:comp/env");
>
>            DataSource ds = (DataSource) envCtx.lookup("jdbc/medical");
>
> 
>
>            Connection conn = ds.getConnection();
>
>            System.out.println("DB Version : "
>
>                                    +
>conn.getMetaData().getDatabaseMajorVersion());
>
>            conn.close();
>
> 
>
> 
>
> I get the following error
>
> 
>
> org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver
>of class '' for connect URL 'null'
>
>            at
>org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSourc
e
>.java:780)
>
>            at
>org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.j
a
>va:540)
>
>            at
>com.advtechgrp.web.servlet.TestConn.processRequest(TestConn.java:37)
>
>            at
>com.advtechgrp.web.servlet.TestConn.doGet(TestConn.java:20)
>
>            at
>javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
>
>            at
>javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
>            at
>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
a
>tionFilterChain.java:252)
>
>            at
>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
t
>erChain.java:173)
>
>            at
>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVal
v
>e.java:214)
>
>            at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveC
o
>ntext.java:104)
>
>            at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
5
>20)
>
>            at
>org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCo
n
>textValve.java:198)
>
>            at
>org.apache.catalina.core.StandardContextValve.invoke(StandardContextVal
v
>e.java:152)
>
>            at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveC
o
>ntext.java:104)
>
>            at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
5
>20)
>
>            at
>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.jav
a
>:137)
>
>            at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveC
o
>ntext.java:104)
>
>            at
>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.jav
a
>:118)
>
>            at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveC
o
>ntext.java:102)
>
>            at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
5
>20)
>
>            at
>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve
.
>java:109)
>
>            at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveC
o
>ntext.java:104)
>
>            at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
5
>20)
>
>            at
>org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>
>            at
>org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>
>            at
>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:7
9
>9)
>
>            at
>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process
C
>onnection(Http11Protocol.java:705)
>
>            at
>org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:5
7
>7)
>
>            at
>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPoo
l
>.java:684)
>
>            at java.lang.Thread.run(Thread.java:534)
>
> Caused by: java.lang.NullPointerException
>
>            at
>java.util.StringTokenizer.<init>(StringTokenizer.java:146)
>
>            at com.ibm.db2.jcc.DB2Driver.acceptsURL(DB2Driver.java:245)
>
>            at java.sql.DriverManager.getDriver(DriverManager.java:232)
>
>            at
>org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSourc
e
>.java:773)
>
>            ... 29 more
>
> 
>
>I have the DB2 jars in the common/lib
>
> 
>
>Any suggestions?
>
> 
>
>Thanks,
>
> 
>
>Tom Henricksen
>Consultant
>Advanced Technologies Group, Inc.
>
>* Email:     [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]


---------------------------------------------------------------------
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