使用Apache Tomcat V7.0时出现JDBC连接错误

时间:2012-11-26 19:20:27

标签: java jsp ms-access jdbc

我在使用apache tomcat版本7时遇到了一种情况。我在记事本中创建了一个简单的index.jsp文件,并在scriptlet标记中编写了以下JDBC代码:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection c = DriverManager.getConnection("jdbc:odbc:testdsn");

out.println(c);
            Statement stmt = c.createStatement();

ResultSet rs = stmt.executeQuery("select * from login");

while(rs.next())
{
    out.println(rs.getString(1));
}

我将JSP文件与WEB-INF并行放在名为“test”的文件夹中,其中包含WEB-INF中的classes文件夹和web.xml。我使用cmd创建了一个war文件,并将其部署到tomcat。

当我尝试运行index.jsp文件时,它显示错误数据源名称未找到且未指定默认驱动程序。

我知道为什么这个错误会出现在Java中,但这次我无法解决它。

问题是我已经创建了必需的dsn,但仍然不接受并显示未找到的数据源名称。

堆栈跟踪是:

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

根本原因

javax.servlet.ServletException: java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:912)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:841)
org.apache.jsp.index_jsp._jspService(index_jsp.java:98)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

0 个答案:

没有答案