Connection con; 
    Statement sql;  
    ResultSet rs; 
你的这三个变量都没有初始化,所以它就报异常了
你可以把他放到<%! %>中就可以这样写,但是你写在<% %>中就必须给它赋值

解决方案 »

  1.   

    谢谢 谢谢 太感谢了!接下来:我把
    <%
    改为了
    <%!然后出现的出错页面信息是:HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:15: 需要 <标识符>
        Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
                     ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:17: 需要 <标识符>
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
        con=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testDatabase","sa","02101");
           ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:18: 需要 <标识符>
        sql=con.createStatement();
           ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:19: 需要 <标识符>
        rs=sql.executeQuery("select * from userTable");
          ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:21: 需要 <标识符>
        out.print("<Table Border>");
                 ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:22: 需要 <标识符>
        out.print("<TR><td colspan=8 align=center>鐢ㄦ埛鏁版嵁</td></tr>");   
                 ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:23: 需要 <标识符>
        out.print("<TR>");
                 ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:24: 需要 <标识符>
           out.print("<Td width=100 >"+"鐢ㄦ埛ID鍙?");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:25: 需要 <标识符>
           out.print("<Td width=50 >"+"鐢ㄦ埛鍚?");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:26: 需要 <标识符>
           out.print("<Td width=100>"+"鐢ㄦ埛鐪熷疄濮撳悕");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:27: 需要 <标识符>
           out.print("<Td width=50>"+"骞撮緞");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:28: 需要 <标识符>
           out.print("<Td width=50>"+"鎬у埆");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:29: 需要 <标识符>
           out.print("<Td width=100>"+"鑱旂郴鍦板潃");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:30: 需要 <标识符>
           out.print("<Td width=100>"+"鑱旂郴鐢佃瘽");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:31: 需要 <标识符>
           out.print("<Td width=100>"+"娣诲姞鏃堕棿");
                    ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:32: 需要 <标识符>
        out.print("</TR>");
                 ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:34: 非法的类型开始
        while(rs.next())
        ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:46: 需要 <标识符>
      out.print("</Table>");
                           ^
    An error occurred at line: 7 in the jsp file: /selectuserTable.jsp
    Generated servlet error:
    D:\Tomcat 5.0\work\Catalina\localhost\jsp\org\apache\jsp\selectuserTable_jsp.java:47: 需要 <标识符>
      con.close();
               ^
    19 错误 org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
    org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:437)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:497)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.30 logs.
    然后我又傻了! 是我改错了是吗?  请你再帮帮我好吗?
      

  2.   

    谢谢 非常感谢!我把它改成了:<%! 
    Connection con;  
    Statement sql;   
    ResultSet rs; 
    %><% 
    ......
    出错的页面是:HTTP Status 404 - /selectUserTable.jsp--------------------------------------------------------------------------------type Status reportmessage /selectUserTable.jspdescription The requested resource (/selectUserTable.jsp) is not available.
    --------------------------------------------------------------------------------
    请问我还需要改什么地方吗? 先谢谢了!
      

  3.   

    不好意思刚才我弄错了!我把它改成了: <%!  
    Connection con;   
    Statement sql;    
    ResultSet rs;  
    % > <%  
    ...... 出错的页面是: HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:846)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
    org.apache.jsp.selectuserTable_jsp._jspService(selectuserTable_jsp.java:102)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
    com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
    com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
    com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
    com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
    com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
    com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
    java.sql.DriverManager.getConnection(DriverManager.java:525)
    java.sql.DriverManager.getConnection(DriverManager.java:171)
    org.apache.jsp.selectuserTable_jsp._jspService(selectuserTable_jsp.java:60)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.30 logs.请问我还需要改什么地方吗? 先谢谢了!
      

  4.   

    如果你的JSP 代码写的没有问题的话,我怀疑上你的SQLSever 有问题 ,你到网上下载一个 SQLServer 的sp3 和 sp4 升级包,并安装,再看下出现了此类异常没!!!
      因为网上出现这种异常,用这种方法解决满好的!
      

  5.   

    非常感谢 Ghost_520 回了我的帖子!不过我打了 SQLServer sp4 的补丁,还是出现一样的错误。我想,会不会是 我其他什么地方没弄好。我再找找原因看, 在问题弄好之前我会经常关注这个帖子的。 谢谢各位大哥哥给我的意见, 请各位大哥继续帮帮我啊! 非常非常感谢!
      

  6.   

    谢谢各位大哥的帮忙,到今天我终于把数据库连接上了。(AWUSOFT 在QQ上指导下完成) 
    非常感谢大家的厚爱!  特别是 AWUSOFT  和 Andy_Fay  两位大哥! 我现在是在单位做 网络维护 网站设计 和平面设计  事情比较杂,比较多。 当然不能跟楼上的各位大哥比了! 不管怎么样,受到各位大哥的照顾 
    小弟感恩不尽!   
    真想给每一个回帖的人给分,可惜小弟的分数不够!只能给我帮忙最多的两位大哥了! 
    ----------------------------(结帖)-----------------------------