安装tomcat 以后 
http://localhost:8080/ 可以显示
Hello World 测试也行
The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSP
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:346)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:414)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
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)
root cause Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:106)
org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:935)
org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:764)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:382)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
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.28 logs.
我把test.jsp放在C:\Tomcat\webapps\jsp-examples\jsp2\simpletag下
测试报上面的错误!郁闷死了!

解决方案 »

  1.   

    JAVA_HOME does not point to the JDK
     JAVA_HOME没设置正确
      

  2.   

    Unable to find a javac compiler
      

  3.   

    呵呵
    你分别找一下jdk的lib下和tomcat的common下哪里缺少一个tool.jar,你把有的一边copy到没有的一边去提示是因为没有这个包,不支持动态编译JSP
      

  4.   

    Unable to find a javac compiler;
    com.sun.tools.javac.Main is not on the classpath.
    Perhaps JAVA_HOME does not point to the JDK看看你的javahome
      

  5.   

    tomcat 不自带jdk,你看一下你的环境变量里的JAVA_HOME和CLASS_PATH是否配置正确了,
      

  6.   

    把test.jsp放到ROOT下面就可以了.
    或者在server.xml再配一个Context,然后在webapps下建个目录.
      

  7.   

    放在root下还是报相同的错!我已经换成tomcat5.5了!还是同样的错!改不好了!静态页面是可以浏览的!
      

  8.   

    JAVA_HOME 要设置,你装jdk没有?
      

  9.   

    安装了!并且jdk可以在dos下正常调试!我装的是jdk5!
      

  10.   

    呵呵
    你分别找一下jdk的lib下和tomcat的common下哪里缺少一个tools.jar,你把有的一边copy到没有的一边去提示是因为没有这个包,不支持动态编译JSP
      

  11.   

    缺少一个tools.jar包,复制过去就可以了
      

  12.   

    拷过去需要重启tomcat贴代码看一下
      

  13.   

    --------------------------------------------------------------------------------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: 4 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on tokens, delete these tokensAn error occurred at line: 4 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error, insert ";" to complete StatementAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token(s), misplaced construct(s)An error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", delete this tokenAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", invalid ExpressionAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", invalid Expression
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 4 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on tokens, delete these tokensAn error occurred at line: 4 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error, insert ";" to complete StatementAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token(s), misplaced construct(s)An error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", delete this tokenAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", invalid ExpressionAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", invalid Expression
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:409)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:297)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.15 logs.
    我从新写了一个还是这样的问题!
      

  14.   

    Generated servlet error:
    Syntax error on tokens, delete these tokensAn error occurred at line: 4 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error, insert ";" to complete StatementAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token(s), misplaced construct(s)An error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", delete this tokenAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", invalid ExpressionAn error occurred at line: 20 in the jsp file: /classic.jsp
    Generated servlet error:
    Syntax error on token "<", invalid Expression
     这都是标点符号错误。语法的错误,在仔细看看。
      

  15.   

    <HTML>
      <HEAD>
      <TITLE>
      JSP测试页面---HelloWorld!
      </TITLE>
      </HEAD>
      <BODY>
    <center>
        当前的时间是:
      <%=new java.util.Date()%>
    </center>
      </BODY>
      </HTML>
    这个语法也有错吗?
      

  16.   

    错误依旧呀!
    --------------------------------------------------------------------------------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
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause org.apache.jasper.JasperException: Unable to compile class for JSP
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:572)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.io.UTFDataFormatException: Invalid byte 1 of 1-byte UTF-8 sequence.
    org.apache.jasper.xmlparser.UTF8Reader.invalidByte(UTF8Reader.java:620)
    org.apache.jasper.xmlparser.UTF8Reader.read(UTF8Reader.java:491)
    org.apache.jasper.xmlparser.XMLEncodingDetector.load(XMLEncodingDetector.java:999)
    org.apache.jasper.xmlparser.XMLEncodingDetector.skipString(XMLEncodingDetector.java:950)
    org.apache.jasper.xmlparser.XMLEncodingDetector.scanXMLDecl(XMLEncodingDetector.java:1208)
    org.apache.jasper.xmlparser.XMLEncodingDetector.getEncoding(XMLEncodingDetector.java:120)
    org.apache.jasper.xmlparser.XMLEncodingDetector.getEncoding(XMLEncodingDetector.java:108)
    org.apache.jasper.compiler.ParserController.determineSyntaxAndEncoding(ParserController.java:304)
    org.apache.jasper.compiler.ParserController.doParse(ParserController.java:169)
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:155)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.15 logs
      

  17.   

    root cause 
    java.io.UTFDataFormatException: Invalid byte 1 of 1-byte UTF-8 sequence.
    是不是你的代码里面有全角空格之类的不可见字符
    自己打一遍,不要用网页上copy的