我安装完JDK1.5 ,且配置好后,用 helloword.java 程序测试正常
然后安装完tomcat5.0.28 且配置好后,输入 http://localhost:8080/ 也能得出正常运行的画面(带猫的那个画面)。
具体的配置:
classpath    .;C:\Program Files\Java\jdk1.5.0_04\lib\dt.jar;C:\Program Files\Java\jdk1.5.0_04\lib\tools.jarPATH      C:\Program Files\Java\jdk1.5.0_04\bin;C:\Program Files\Java\jdk1.5.0_04\libJAVA_HOME    C:\Program Files\Java\jdk1.5.0_04CATALINA_HOME    C:\Tomcat 5.0但是我运行 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
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.
哪位高手能够指导一下 ,为什么 ?  是不是版本问题引起的 
tomcat5.0.28+j2sdk1.5谢谢了 

解决方案 »

  1.   

    注意下这一行:JAVA_HOME does not point to the JDK
    是不是你的jdk有问题,重装一下试试
      

  2.   

    tomcat 没有找到相应的jdk。
    我现在都不定义系统变量了,你可以直接在tomcat_home/bin/setclasspath.bat中指定jdk_home和jre_home。这样避免了多个tomcat引用不同的jdk引起的混乱。
      

  3.   

    com.sun.tools.javac.Main is not on the classpath.
    Perhaps JAVA_HOME does not point to the JDK 你把jdk安装目录下面的jdk1.5.0_04\lib\Tools.jar拷到tomcat下面的common\lib下面就可以了
      

  4.   

    把PATH C:\Program Files\Java\jdk1.5.0_04\bin;C:\Program Files\Java\jdk1.5.0_04\lib后面的;C:\Program Files\Java\jdk1.5.0_04\lib剪切到
    classpath    .;C:\Program Files\Java\jdk1.5.0_04\lib\dt.jar;C:\Program Files\Java\jdk1.5.0_04\lib\tools.jar
    的后面
      

  5.   

    以上问题按4楼的方法已经解决:  你把jdk安装目录下面的jdk1.5.0_04\lib\Tools.jar拷到tomcat下面的common\lib下面就可以了但还是有些问题如下 :type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
    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.lang.NullPointerException
    org.apache.jsp.OnlineShop.index_jsp._jspService(index_jsp.java:132)
    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.28 logs.看不明白 ,高手指点一下 
    谢谢了
      

  6.   

    第一个问题
    你把jdk安装目录下面的jdk1.5.0_04\lib\Tools.jar拷到tomcat下面的common\lib下面就可以了
    之后的就是你的代码有问题,产生空指针异常,你到C:\ProgramFiles\Tomcat\work\Catalina\localhost\你的工程目录名\org\apache\jsp目录下看看index_jsp.java这个文件的132行~问题应该就处在此。