小弟的JSP运行环境搭建一天也没成功,各位看一下是怎么回事?
所需软件如下:<1> j2sdk-1_5_0-beta-windows-i586.exe
     <2> jakarta-tomcat-5.0.19.exe
其中j2sdk是装在:c:\java\ 目录下的.
    tomcat是装在:C:\tomcat\Tomcat 5.0  目录下.环境变量设置如下(我用的是winxp系统);
CLASSPATH ---> 值:%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
JAVA_HOME ---> 值:C:\java
Path      ---> 
值:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%JAVA_HOME%\bin;
TOMCAT_HOME --> 值:C:\tomcat\Tomcat 5.0按照上面的设置如果输入:http://127.0.0.1:8080 可以看到tomcat欢迎界面.
因为我的:C:\tomcat\Tomcat 5.0\webapps有一个文件.1.jsp
C:\tomcat\Tomcat 5.0\webapps\ROOT 也有一个文件.1.jsp.
(因为我不知道,什么都配置好之后默认的目录是哪个目录,所以就都放了一个1.jsp文件测试.
1.jsp文件内容如下:  
<%@ page contentType="text/html;charset=GB2312"%>
  <%@ page import="java.util.*"%>
  <HTML>
  <BODY>
  <P>
  现在的时间是:
  <% Date date=new Date();
  %>
  <BR>
  <%=date%>
  </BODY>
  </HTML>
输入:http://127.0.0.1:8080/1.jsp出现错误提示如下:
(description The server encountered an internal error () that prevented it from fulfilling this request.)
还有的教程说把:
TOMCAT_HOME --> 值:C:\tomcat\Tomcat 5.0
改成:CATALINA_HOME=C:\tomcat\Tomcat 5.0(请问一下 CATALINA代表什么意思?)
我也试了,也不行.
现在都急死了,请各位帮帮我吧.

解决方案 »

  1.   


    放在root下就可以了.
    代码没错.
    还有什么别的错误提示?
      

  2.   

    在webapps下建个文件夹test
    把ROOT里边的WEB-INF文件夹复制一份到
    test文件夹下...
    然后把你的1.jsp放到test下..
    启动tomcat
    输入http://127.0.0.1:8080/test/1.jsp
      

  3.   

    把jdk下的tools.jar文件copy到Tomcat\common\lib目录下再试试
      

  4.   

    还是不行啊,错误提示如下:
    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 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)
      

  5.   

    你的环境变量有问题~
    在你的CLASSPATH 前面加上.;然后是DT.JAR;TOOLS.JAR
    JAVA_HOME 是你的jdk的目录.
    path 还的配置:你的jdk的目录/BIN;这样可以指定你的jdk下的javac.exe
      

  6.   

    楼主可以参考Kipen(&#11963;石の頭丶) 的说法.建议,你可以在eclipse下建立一个web项目,然后与tomcat建立关联,启动tomcat服务器,看看,
      

  7.   

    你装JDK和TOMCAT的时候可以直接装到根目录底下可以方便查找和配置
    另外Tomcat5.0用的Jdk是1.4.7你把版本弄好
    可能是你前面的版本没有配好
    另外把你的jsp文件包放到Tomcat 5.0\webapps底下
    然后在地址栏输入http://127.0.0.1:8080/就是你jsp文件包的名字
    这样就可以了
    你试一下
      

  8.   

    错误提示找不到编译器javac.exe,你的path路径设置有问题,看看javac.exe是不是在c:\java\bin这个目录,如果不是就需要修改你的JAVA_HOME,比如我的就是D:\Java\JDK
      

  9.   

    lijuan33828(哈哈) (哈哈,开个玩笑,我猜你是李娟吧,哈哈!)
    你好,你说另外Tomcat5.0用的Jdk是1.4.7你把版本弄好
    我想问一下Tomcat5.0不能用Jdk是1.5.0吗?
    还有就是;
    classpath环境变量里面还要设置关于tomcat的什么东西吗?
    我看老师上课的时候只是在classpath里面加了jdk的类路径.
    如果要加,请问都要加些什么呢>,还有加它有什么作用呢(即什么时候调用它)>?
    谢谢各位了!!!!!!!!!!!!!!!!11
      

  10.   

    你只需配置好环境变量里面的:path,classpath,java_home
    就可以了
    在tomcat里面没有什么需要配置的
      

  11.   

    按照这个方法做了,还是不行啊:(在webapps下建个文件夹test
    把ROOT里边的WEB-INF文件夹复制一份到
    test文件夹下...
    然后把你的1.jsp放到test下..
    启动tomcat
    输入http://127.0.0.1:8080/test/1.jsp)
    我的环境变量设置如下:j2sk安装目录是c;\java\;tomcat安装目录是:c:\tomcat;
    环境变量配置如下:java_home=c:/java; tomcat_home=c:\tomcat;
    path=c:\java\bin;c:\tomcat\bin;
    classapth=c:\java\lib\tools.jar;c:\java\lib\dt.jar;.;
    如果在C:\tomcat\webapps\ROOT目录下新建一个html文档则可通过:http://127.0.0.1:8080/1.html访问,但是1.jsp却不能访问,提示错误如下: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 JSPNo Java compiler was found to compile the generated source for the JSP. 
    This can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK 
    to the common/lib directory of the Tomcat server, followed by a Tomcat restart. 
    If using an alternate Java compiler, please check its installation and access path. org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:127)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:351)
    org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:415)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:458)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:553)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:291)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    note The full stack trace of the root cause is available in the Tomcat logs.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.19
      

  12.   

    你在webdav文件夹里面WEB-INF拷贝到你做的程序的文件夹里面
    然后重启tomcat服务器
    试一下,应该就可以了
      

  13.   

    修改classpath =.;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar
    path后追加;%catalina_home%\common\lib
      

  14.   

    classpath
    C:\j2sdk1.4.2_07\lib\tools.jar;C:\j2sdk1.4.2_07\lib\dt.jar
    path
    ;C:\j2sdk1.4.2_07\bin
    java_home
    C:\j2sdk1.4.2_07
      

  15.   

    JAVA_HOME ---> 值:C:\java==============================================
    怎么说也应该是 JAVA_HOME ---> 值:C:\java\jdk1.5.0 吧
      

  16.   

    j2sdk的版本没有什么问题
    JAVA_HOME C:\java\"你的JDK的名字"
      

  17.   

    其中j2sdk是装在:c:\java\ 目录下的.
    ==================================
    c:\java\ 下面有你JDK的目路
      

  18.   

    CLASSPATH ---> 值:%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;你的classpath值有没有加一个.?
      

  19.   

    classpath前要加  .;  才行.
      

  20.   

    如果你是安装版本的直接装JDK、TOMCAT,之后其它什么都不要做,就可以了。拷贝版本的只要增加:
    set JAVA_HOME=xxxxxxxxxxxxxxxxxxx\j2sdk1.xxxxxxxxx
    set CATALINA_HOME=xxxxxxxxxxxxxxxxx\Tomcat5
    到tomcat5/bin/startup.bat 里面即可(加到开头),然后使用startup.bat启动服务器。
      

  21.   

    不是的各位,还是不行您说所的路径问题我明白,您怕我搞错了,
    我在安装JDK的时候已经建立好了一个名为java的文件夹在安装时候我改变安装路径的时候
    我选择了java之后后面默认的写了这样一个路径c:\java\jdk1.5.0
    但是我手工的把\jdk1.5.0给删除了,所以我的java的安装目录为c:java
    现在还是没的搞定,请各位帮我想想一还有什么地方不对.
    我的测试文件放在:C:\tomcat\webapps\ROOT 下名为1.jsp 其中C:\tomcat\webapps\ROOT下我还建立了一个1.html,在地址栏输入:http://127.0.0.1:8080/1.htm可以正常访问和显示:
    而在地址栏输入:http://127.0.0.1:8080/1.jsp则出现如下错误: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 JSPNo Java compiler was found to compile the generated source for the JSP. 
    This can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK 
    to the common/lib directory of the Tomcat server, followed by a Tomcat restart. 
    If using an alternate Java compiler, please check its installation and access path. org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:127)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:351)
    org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:415)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:458)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:553)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:291)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    note The full stack trace of the root cause is available in the Tomcat logs.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.19
      

  22.   

    我的classpath前面也加.;了,谢谢您 battle2002() ( ) 信誉:100    Blog   加为好友  2007-04-29 16:54:24  得分: 0  
     lijuan33828(哈哈) ( ) 信誉:100    Blog   加为好友  2007-04-29 15:32:32  得分: 0  
     谢谢你,像你下面说的这样也不成功:
    引用lijuan3328(哈哈)的话---->(你在webdav文件夹里面WEB-INF拷贝到你做的程序的文件夹里面
    然后重启tomcat服务器
    试一下,应该就可以了)
     
      

  23.   

    还有就是各位朋友,我在cmd命令行下去用javac编译我写好的java源程序也可以编译成功
    再用java命令显示class文件也正常.
    现在我都被搞得晕头转向的,请各位指点迷津.
      

  24.   

    应该先测试JDK环境有没有问题,你装的JAVA1.5应该在C:\JAVA\JDK
      

  25.   

    不好意思,刚才换了一个tomcat重新安装了一下,如果1.jsp里面输入111111111则可以正常访问了.
    但是如果1.jsp的内容为:
    <%@ page contentType="text/html;charset=GB2312"%>
      <%@ page import="java.util.*"%>
      <HTML>
      <BODY>
      <P>
      现在的时间是:
      <% Date date=new Date();
      %>
      <BR>
      <%=date%>
      </BODY>
      </HTML>
    则出现以下的错误(好像还有乱码),请问一下是不是我的什么东西没有安装好呢?
    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: /1.jsp
    Generated servlet error:
    C:\tomcat\work\Catalina\localhost\_\org\apache\jsp\_1_jsp.java:51: illegal character: \12288
    銆?銆?
    ^
    An error occurred at line: 7 in the jsp file: /1.jsp
    Generated servlet error:
    C:\tomcat\work\Catalina\localhost\_\org\apache\jsp\_1_jsp.java:51: illegal character: \12288
    銆?銆?
     ^
    2 errors 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:412)
    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.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.28
      

  26.   

    HTTP Status 500 - 
    这个好象是语法错误啊     我不是很清楚  你可以看看的
      

  27.   

    楼主,把你的java1.4目录下的lib下的tools.jar拷贝一份放到tomcat目录下的commom/lib下
      

  28.   

    拷贝了,还是出现上面的错误如下所示(而且我的1.jsp内容也没有什么语法错误啊)
    <%@ page contentType="text/html;charset=GB2312"%>
      <%@ page import="java.util.*"%>
      <HTML>
      <BODY>
      <P>
      现在的时间是:
      <% Date date=new Date();
      %>
      <BR>
      <%=date%>
      </BODY>
      </HTML>
    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: /1.jsp
    Generated servlet error:
    C:\tom\work\Catalina\localhost\_\org\apache\jsp\_1_jsp.java:51: illegal character: \12288
    銆?銆?
    ^
    An error occurred at line: 7 in the jsp file: /1.jsp
    Generated servlet error:
    C:\tom\work\Catalina\localhost\_\org\apache\jsp\_1_jsp.java:51: illegal character: \12288
    銆?銆?
     ^
    2 errors 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:412)
    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.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.28
      

  29.   

    仔细检查你的类路径classpath,既然能报错说明javac java命令没有问题的,错误提示出在7 line 那里有个创建Date,应该是java.util.Date的问题,确保<%@page import="java.util.Date"%>真的没有问题
      

  30.   

    请问如何确保<%@page import="java.util.Date"%>真的没有问题?