Hi

try this

InitialContext ic  = new InitialContext();
DataSource ODS = (javax.sql.DataSource) ic.lookup("java:comp/env/jdbc/medical");
Connection conn  =  ODS.getConnection();


It works for me in Oracle 10G on TC



with regards
Karthik

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(BasicDataSource
.java:780)

            at
org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.ja
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(Applica
tionFilterChain.java:252)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:173)

            at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)

            at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)

            at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)

            at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
textValve.java:198)

            at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:152)

            at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)

            at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)

            at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:137)

            at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)

            at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)

            at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
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(StandardValveCo
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:79
9)

            at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)

            at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)

            at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.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(BasicDataSource
.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]

Reply via email to