我的系统为XP2000 
SQL 2000  JSP 和TOMCAT 5.5  JDBC 驱动(连接SQL的驱动)
环境变量已经配置(将JDBC的那三个文件的路径设置在CLASSPATH中)
我写的JSP文件如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD  HTML 4.0 Transitional//EN">
<%@ page language="java" contentType="text/html; charset=gb2312" %>
<%@ page import="java.sql.*" %>
<html>
<body bgcolor="#FFFFFF">
<% 
  Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=newsdb";
  Connection con=DriverManager.getConnection(url,"sa","123");
  Statement  smt=con.createStatement  (ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
  String sql="select title from article ";
  ResultSet rs=smt.executeQuery(sql);
  while( rs.next() ) {
%>
  你的第一个字段内容为:<%=rs.getString(title)%>  /*注释:将title改为1也不行*/
  你的第二个字段内容为:<%=rs.getString(title)%>  /*注释:将title改为2也不行*/
  <%}% >
  <%out.print("数据库操作成功,恭喜你");%>
  <%rs.close();
   smt.close();
   con.close();
  %>
</body>
</html>
现在将TOMCAT服务打开,默认的主页可以看到
现在录入上述文件名为jsp1.jsp(http://localhost:8080/news/jsp1.jsp)后,运行结果报错如下:
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 JSP: 
JSP FileName:/index4.jsp
Java FileName:/D:/eclipse/Tomcat 5.5/work/Catalina/localhost/news//org/apache/jsp\index4_jsp.javaAn error occurred at line: 17 in the jsp file: /index4.jsp
Syntax error on tokens, delete these tokens
14: %>
15:   你的第一个字段内容为:<%=rs.getString(title)%>
16:   你的第二个字段内容为:<%=rs.getString(title)%>
17:   <%}% >
18:   <%out.print("数据库操作成功,恭喜你");%>
19:   <%rs.close();
20:    smt.close();
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:98)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:302)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.25 logs.
请问这是什么错误,如何更正!

解决方案 »

  1.   

    语法错误。
    17:    <%}% > 
    这一行中%与>多了一个空格。
    去掉就OK了。
    至少可以编译通过。
      

  2.   

    为什么它提示Unable to compile class for JSP???
    这个一般在什么情况下回报错的??
    语法是没有问题的!
      

  3.   

    編譯都通不過
    你確定你jsp頁面上是沒語法錯誤的?
    一條黃線都沒有?
      

  4.   

    大家不要在找语法的问题了,因为根本就没有问题!
    主要的问题就是org.apache.jasper.JasperException: Unable to compile class for JSP: 
    !!
    希望大家给个答案!!
      

  5.   

    跟你说TOMCAT有时报的错误未必是正确的