Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Tomcat unable to find my jdbc driver

843835Feb 7 2002 — edited Feb 7 2002
Hi,

I'm trying to retrieve records from the database and simply display them in the browser. I'm getting the following error. I'm assuming that Tomcat3.2 cannot find my sql driver. If my assumption is right, should I change something in the server.xml, or add something to the classpath?

500 Error:
Internal Servlet Error:javax.servlet.ServletException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at SampleServlet.doGet(SampleServlet.java, Compiled Code)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java, Compiled Code)
at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java, Compiled Code)
at java.lang.Thread.run(Thread.java:479)

Root cause:
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at org.apache.tomcat.loader.AdaptiveClassLoader.loadClass(AdaptiveClassLoader.java, Compiled Code)
at java.lang.Exception.(Exception.java, Compiled Code)
at java.lang.ClassNotFoundException.(ClassNotFoundException.java, Compiled Code)
at org.apache.tomcat.loader.AdaptiveClassLoader.loadClass(AdaptiveClassLoader.java, Compiled Code)
at java.lang.ClassLoader.loadClass(ClassLoader.java, Compiled Code)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java, Compiled Code)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java, Compiled Code)
at SampleServlet.doGet(SampleServlet.java, Compiled Code)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java, Compiled Code)
at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java, Compiled Code)
at java.lang.Thread.run(Thread.java:479)


And here's my code:

import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;


public class SampleServlet extends HttpServlet {

public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {

res.setContentType("text/html");
PrintWriter out = res.getWriter();

out.print("<html><head><title>User Profile</title></head><body>");

out.print("<code><pre>");
out.println("tReg Id\tLast Name\n");

// connecting to database

Connection con = null;
Statement stmt = null;

String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=MYDB";
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
con = DriverManager.getConnection(url,"uname","pass");

stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);

// displaying records

ResultSet uprs = stmt.executeQuery("SELECT REG_ID, REG_LNAME FROM Registry");
while(uprs.next()) {
int regid = uprs.getInt("REG_ID");
String lname = uprs.getString("REG_LNAME");
out.print(regid + " " + lname);
}


} catch (SQLException e) {
throw new ServletException(e);
} catch (ClassNotFoundException e) {
throw new ServletException(e);
} finally {
try {

if(stmt != null)
stmt.close();
if(con != null)
con.close();
} catch (SQLException e) {}
}

out.print("</body></html>");
out.close();
}
}
Thank you.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 7 2002
Added on Feb 7 2002
4 comments
532 views