I know this may sound a little odd but it worked for me.....try renaming db2java.zip to db2java.jar and putting it in the directory mentioned by guru.
Raghupathy, Gurumoorthy wrote: >copy the db2java.zip file into the lib directory of your context >"WEB-INF/lib/" and restart your context/sever .... >Regards >guru > >-----Original Message----- >From: IT-deptartment-Coast Mountain Dairy >[mailto:[EMAIL PROTECTED]] >Sent: 18 July 2002 15:59 >To: [EMAIL PROTECTED] >Subject: jdbc driver and simple servlet > > >Hi, > I have a simple servlet which which registers a DB2 jdbc driver, and >attempts to >retrieve information for a sample table I created. > > I'm running this on Tomcat 4.0. I'm using IBM's DB2 UDB v 7.x. The >archivecontaining the DB2 jdbc driver is : "db2java.zip". > > I've utilized the same driver-related code in applets and applications >(both net and app based drivers) without any problem. > > However, when I use the code in the servlet, the class loader cannot >locate the driver, ergo, cannot locate the archive. Here's the exact >message... > >==================================================== >java.lang.ClassNotFoundException: COM.ibm.db2.jdbc.net.DB2Driver > at >org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa >der.java:1307) > at >org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa >der.java:1156) > at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:322) >==================================================== > > I've "blanketed" Tomcat's directories with my "db2java.ip" file (based >on Tomcat's documentation re: Class Loader Info.) > > However, I have NOT ammended the web.xml file in my WEB-INF directory >specific to my servlet. > >How do I resolve this problem? (it's extremely frustrating, since it appears >to be a configuration issue only!) > > >Thank you in advance. > >John > >PS. The code is listed below. > > > >import java.io.*; >import java.text.*; >import java.util.*; >import javax.servlet.*; >import java.sql.*; >import javax.servlet.http.*; > >import COM.ibm.db2.jdbc.net.DB2Driver.*; > >public class cmdtest extends HttpServlet { > > Connection con; > > public void doGet(HttpServletRequest request, > HttpServletResponse response) > throws IOException, ServletException > { > ResourceBundle rb = > ResourceBundle.getBundle("LocalStrings",request.getLocale()); > > response.setContentType("text/html"); > PrintWriter out = response.getWriter(); > > out.println("<html>"); > out.println("<head>"); > > String title = rb.getString("cmdtest.title"); > > out.println("<title>" + title + "</title>"); > out.println("</head>"); > out.println("<body bgcolor=\"white\">"); > out.println("<body>"); > > > out.println("<a href=\"/examples/servlets/cmdtest.html.html\">"); > out.println("<img src=\"/examples/images/code.gif\" height=24 " + > "width=24 align=right border=0 alt=\"view code\"></a>"); > out.println("<a href=\"/examples/servlets/index.html\">"); > out.println("<img src=\"/examples/images/return.gif\" height=24 " + > "width=24 align=right border=0 alt=\"return\"></a>"); > out.println("<h1>" + title + "</h1>"); > > try { > // register the driver with DriverManager > // The newInstance() call is needed for the sample to work with > // JDK 1.1.1 on OS/2, where the Class.forName() method does not > // run the static initializer. For other JDKs, the newInstance > // call can be omitted. > > Class.forName("COM.ibm.db2.jdbc.net.DB2Driver").newInstance(); > > } catch (Exception e) { > e.printStackTrace(); > } > > try { > > // construct the URL ( sample is the database name ) > String url = "jdbc:db2://localhost:6789/CMD_PROD"; > > String userid = "itd"; > String password = "cmdit!0801"; > > // connect to database with userid and password > con = DriverManager.getConnection(url, userid, password ); > > out.println("<h1>" + connectMsg2 + "</h1>"); > > } catch( Exception e ) { > e.printStackTrace(); > } > > try { > > Statement stmt = con.createStatement(); > ResultSet rs = stmt.executeQuery("SELECT * from CMD_COMPANY"); > > // display the result set > // rs.next() returns false when there are no more rows > int y = 50; > int i = 0; > while (rs.next() && (i<10)) { > i++; > String a= rs.getString(2); > String str = rs.getString(3); > String oneLine = " Comp. Name= " + a + " Comp. Abbr.= " + >str; > file://g.drawString(oneLine, 20, y ); > out.println("<h1>" + oneLine + "</h1>"); > y = y + 15; > > } > stmt.close(); > > } catch( Exception e ) { > e.printStackTrace(); > } > > > out.println("</body>"); > out.println("</html>"); > > } >} > >___________________________________________________________________________ >To unsubscribe, send email to [EMAIL PROTECTED] and include in the body >of the message "signoff SERVLET-INTEREST". > >Archives: http://archives.java.sun.com/archives/servlet-interest.html >Resources: http://java.sun.com/products/servlet/external-resources.html >LISTSERV Help: http://www.lsoft.com/manuals/user/user.html > >___________________________________________________________________________ >To unsubscribe, send email to [EMAIL PROTECTED] and include in the body >of the message "signoff SERVLET-INTEREST". > >Archives: http://archives.java.sun.com/archives/servlet-interest.html >Resources: http://java.sun.com/products/servlet/external-resources.html >LISTSERV Help: http://www.lsoft.com/manuals/user/user.html > > > > ___________________________________________________________________________ To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff SERVLET-INTEREST". Archives: http://archives.java.sun.com/archives/servlet-interest.html Resources: http://java.sun.com/products/servlet/external-resources.html LISTSERV Help: http://www.lsoft.com/manuals/user/user.html
