王朝知道
分享
 
 
 

tomcat配置,高手请进呀

王朝知道·作者佚名  2010-10-13  
宽屏版  字体: |||超大  
 
分类: 电脑/网络 >> 硬件
 
问题描述:

type Exception report

message

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.

以上是JSP页面报的错,小弟改了半天,但总是那样,请高手指教一下哟

参考答案:

JDK装了没,环境变量里的JDK和JAVAHOME的PATH设了没

环境变量里的PATH一定要设的,不然它靠什么去找你的路径呢

你看报出的信息

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

就是因为找不到才这样

第一步,安装JDK后,先右键点我的电脑。打开属性。然后选择“高级”里面的“环境变量”,在新的打开界面中的系统变量需要设置三个属性“java_home”、“path”、“classpath”,其中在没安装过jdk的环境下。path属性是本来存在的。而java_home和classpath是不存在的。

首先点“新建”,然后在变量名写上java_home,顾名其意该变量的含义就是java的安装路径,然后在变量值写入刚才安装的jdk路径例如“C:\jdk1.4”.

其次在系统变量里面找到path,然后点编辑,path变量的含义就是系统在任何路径下都可以识别java命令,则变量值为“%java_home%\bin;%java_home%\jre\bin”,(其中“%java_home%”的意思为刚才设置java_home的值),也可以直接写上例如“C:\jdk1.4\bin”

最后再点“新建”,然后在变量名上写classpath,该变量的含义是为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别。其值为“.;%java_home%\lib;%java_home%\lib\tools.jar (要加.表示当前路径)”,与相同“%java_home%有相同意思”

以上三个变量设置完毕,则按“确定”直至属性窗口消失,下来是验证看看安装是否成功。先打开“开始”->“运行”,打入“cmd”,进入dos系统界面。然后打“java -version”,如果安装成功。系统会显示java version jdk"1.4.08"......(不同版本号则显示不同)。

第二步,安装tomcat。 安装的过程就像安装windows的其它软件一样简单,选路径,下一步直到完成。其中要注意的是端口号,在安装过程中会提示你修改端口号,如果你没有别的服务器,建议你把端口号修改为80,这样方便你以后调试程序。如果你已经有别的服务器占据了80或者你不怕以后调试时不厌其烦的在地址栏输入8080,那就保持8080。

然后开启servlet调试器。主要是为了在不修改web.xml文件的情况下也能运新servlet,随着学习的深入,你会体会到这样带来的便利性,但不建议企业服务器这么做,仅限于学习阶段。具体做法如下,在tomcat的根目录下,比如我的安转目录是D:\Apache Software Foundation\Tomcat 5.5找到conf文件夹下的web.xml文件.把其中如下的servlet和servlet-mapping元素注释去掉:

<servlet>

<servlet-name>invoker</servlet-name>

<servlet-class>

org.apache.catalina.servlets.InvokerServlet

</servlet-class>

...

</servlet>

...

<servlet-mapping>

<servlet-name>invoker</servlet-name>

<url-pattern>/servlet/*</url-pattern>

</servlet-mapping>

一切OK,进入第三步.

测试服务器.

测试服务器的基本配置. 开始 - 程序 - Apache Tomcat 5.5 - Monitor Tomcat - Start 来启动服务器. 在浏览器地址栏输入(注意:port是你设置的端口好)看能否正确显示Tomcat服务器说明页面.如不行,请检查以上配置.

测试html文件. hello.html写好,拷贝至 tomcat主目录\webapps\ROOT\ 下.在浏览器地址栏输入(注意文件名的大小写).

测试JSP文件. hello.jsp写好,拷贝至 tomcat主目录\webapps\ROOT\ 下.在浏览器地址栏输入(注意文件名的大小写).

测试servlet. 写好HelloServlet.java并编译.把HelloServlet.class拷贝至 tomcat主目录\webapps\ROOT\WEB-INF\classes(一般需要自己建一个classes文件夹)下,在浏览器地址栏输入 (这里可以看到开启servlet调试器的便利之处).

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格&#8203;十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有