弄了快一晚上了

时间:2022-05-22 17:38:11
<%@ page contentType = "text/html;charset = GB2312" %>
<%@ page import = "java.sql.*" %>


<html>
<head><title> 测试数据表字段 </title></head>
<body >
<center>
<hr><br>

<% Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:er");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from rgst");
ResultSetMetaData mtdt = rs.getMetaData();
int nmb = mtdt.getColumnCount();

        for(int i = 0;i<=nmb ;i++){
          out.println(mtdt.getColumnName(i));
        }
          
        rs.close();
        stmt.close();
        con.close();
        %>



</center>
</body>
</html>
怎么会出现如下错误

HTTP Status 500 - 

--------------------------------------------------------------------------------

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

org.apache.jasper.JasperException: An exception occurred processing JSP page /smp191.jsp at line 12

9:  <hr><br>
10: 
11:  <% Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
12:  Connection con = DriverManager.getConnection("jdbc:odbc:er");
13:  Statement stmt = con.createStatement();
14:  ResultSet rs = stmt.executeQuery("select * from rgst");
15:  ResultSetMetaData mtdt = rs.getMetaData();


Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:515)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:408)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


root cause 

javax.servlet.ServletException: java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:855)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:784)
org.apache.jsp.smp191_jsp._jspService(smp191_jsp.java:92)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


root cause 

java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(Unknown Source)
sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
org.apache.jsp.smp191_jsp._jspService(smp191_jsp.java:66)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.

8 个解决方案

#1


未发现数据源名称并且未指定默认驱动程序 
这不很明白么。
1.驱动
2.数据库名。

#2


没有架包驱动

#3


干嘛用 sun.jdbc.odbc.JdbcOdbcDriver

#4


首先:jsp页面写java代码不是一个好习惯!
其次:你程序出错的原因应该是没有驱动包。

#5


问题解决大家辛苦!

#6


JF

#7


在管理工具里配置数据源

#8


加包吧,没其他办法了

#1


未发现数据源名称并且未指定默认驱动程序 
这不很明白么。
1.驱动
2.数据库名。

#2


没有架包驱动

#3


干嘛用 sun.jdbc.odbc.JdbcOdbcDriver

#4


首先:jsp页面写java代码不是一个好习惯!
其次:你程序出错的原因应该是没有驱动包。

#5


问题解决大家辛苦!

#6


JF

#7


在管理工具里配置数据源

#8


加包吧,没其他办法了