I want to thank those who have been trying to help me get this working.  I am 
still stuck on this.

I am going to try and ask the same question again in a little different way and 
maybe someone can spot what I am doing wrong.  Or perhaps tell me if DB2 will 
not work with a DataSource.

I have tried several different ways of configuring this.  Mostly I have edited 
the server.xml file myself.  My latest attempt is to use the Tomcat management 
application.  The generated XML from server.xml is:

  <GlobalNamingResources>
    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
    <Resource auth="Container" description="User database that can be updated 
and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
    <Resource name="jdbc/TestDB" type="javax.sql.DataSource"/>
    <ResourceParams name="UserDatabase">
      <parameter>
        <name>factory</name>
        <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
      </parameter>
      <parameter>
        <name>pathname</name>
        <value>conf/tomcat-users.xml</value>
      </parameter>
    </ResourceParams>
    <ResourceParams name="jdbc/TestDB">
      <parameter>
        <name>maxWait</name>
        <value>5000</value>
      </parameter>
      <parameter>
        <name>maxActive</name>
        <value>4</value>
      </parameter>
      <parameter>
        <name>password</name>
        <value>test</value>
      </parameter>
      <parameter>
        <name>url</name>
        <value>jdbc:db2://devhost1:446/FTBDB2D</value>
      </parameter>
      <parameter>
        <name>driverClassName</name>
        <value>com.ibm.db2.jcc.DB2Driver</value>
      </parameter>
      <parameter>
        <name>maxIdle</name>
        <value>2</value>
      </parameter>
      <parameter>
        <name>username</name>
        <value>f4185</value>
      </parameter>
    </ResourceParams>
  </GlobalNamingResources>


In my web.xml:

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd";>

<web-app>
        <display-name>Data Source Test Servlet</display-name>
        <description>Data Source test servlet for Tomcat</description>
        <servlet>
                <servlet-name>DSServlet</servlet-name>
                <servlet-class>DSServlet</servlet-class>
        </servlet>
        <servlet-mapping>
                <servlet-name>DSServlet</servlet-name>
                <url-pattern>/DSServlet</url-pattern>
        </servlet-mapping>
        <resource-ref>
                <description>
                        Resource reference to DB2.
                </description>
                <res-ref-name>
                        jdbc/TestDB
                </res-ref-name>
                <res-type>
                        javax.sql.DataSource
                </res-type>
                <res-auth>
                        Container
                </res-auth>
        </resource-ref>
</web-app>


In catalina.out:

org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '
' for connect URL 'null'
        at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSou
rce.java:780)
        at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource
.java:540)
        at DSServlet.connect(DSServlet.java:99)
        at DSServlet.doGet(DSServlet.java:38)
...

Farther down:

Caused by: java.lang.NullPointerException


So I think the NullPointerException is in createDataSource.  Could this mean 
that the DB2 driver is incompatible in some way?


Other info:

Tomcat 5.0.28, DB2 8.1 (actually 8.2 I think).

I am able to access the database using DriverManager, so I am sure my URL is 
right.

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