关于tomcat浏览jsp时的编译错误(急!!!!)

doo_fu 2002-09-24 05:50:05
我用的是w2k下的tomcat4.1.10作为服务器,我设置了我的工作目录(http://localhost)为:e:\WebRoot,设置浏览均已成功,但是涉及到useBean的jsp会出错.下例是tomcat的examples中的例子,在原有目录下浏览没有问题,但设置为我的工作目录后,浏览date.jsp时,会在tomcat\work\localhost\...下会生成date_jsp.java,我用命令行对此文件进行编译:
c:>javac date_jsp.java
也能编译成功,但是用浏览器自动编译就会出错,我估计是哪个环境变量没有设好。

请那位大虾不吝赐教!谢谢!!!!
急!!!!!!!!!!!!

date.jsp清单

<html>
<!--
Copyright (c) 1999 The Apache Software Foundation. All rights
reserved.
-->

<%@ page session="false"%>

<body bgcolor="white">
<jsp:useBean id='clock' scope='page' class='dates.JspCalendar' type="dates.JspCalendar" />

<font size=4>
<ul>
<li> Day of month: is <jsp:getProperty name="clock" property="dayOfMonth"/>
<li> Year: is <jsp:getProperty name="clock" property="year"/>
<li> Month: is <jsp:getProperty name="clock" property="month"/>
<li> Time: is <jsp:getProperty name="clock" property="time"/>
<li> Date: is <jsp:getProperty name="clock" property="date"/>
<li> Day: is <jsp:getProperty name="clock" property="day"/>
<li> Day Of Year: is <jsp:getProperty name="clock" property="dayOfYear"/>
<li> Week Of Year: is <jsp:getProperty name="clock" property="weekOfYear"/>
<li> era: is <jsp:getProperty name="clock" property="era"/>
<li> DST Offset: is <jsp:getProperty name="clock" property="DSTOffset"/>
<li> Zone Offset: is <jsp:getProperty name="clock" property="zoneOffset"/>
</ul>
</font>

</body>
</html>
...全文
46 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
ilovehuhu 2002-10-04
  • 打赏
  • 举报
回复
简单的办法是不要让tomcat作为系统服务启动,而是使用命令行下的startup启动,或者用开始菜单中的快捷方式。

复杂的方法修改注册表,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Apache Tomcat 4.1\Parameters中,将Start Class和Stop Class都改为org.apache.catalina.startup.Bootstrap(原来为org.apache.catalina.startup.BootstrapService)。这样就可以作为系统服务启动而且工作正常了。
zjasan 2002-10-04
  • 打赏
  • 举报
回复
.;要加在开头
sduwjr 2002-09-30
  • 打赏
  • 举报
回复
可以修改tomcat的config文件,也可以修改classpath来解决
xuancao 2002-09-30
  • 打赏
  • 举报
回复
javabean中的class文件必须放置到classpath目录中!
7 2002-09-26
  • 打赏
  • 举报
回复
package dates does not exist
dates.JspCalendar clock = null;

在classpath中声明e:\WebRoot\WEB-INF\classes\,然后重启机器
deyungong 2002-09-26
  • 打赏
  • 举报
回复
是不是文件放的位置不对,照你说,你的jsp文件是放在c盘下,而javabean释放在e盘下。假如你jsp文件放在c:\tomcat\webapps\Study\jsp\dates下面,那javabean文件该放在c:\tomcat\webapps\Study\jsp\dates\WEB-INF\classes\dates下面。
doo_fu 2002-09-25
  • 打赏
  • 举报
回复
An error occurred at line: 15 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:67: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getMonth())));
^
An error occurred at line: 16 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:70: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getTime())));
^
An error occurred at line: 17 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:73: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getDate())));
^
An error occurred at line: 18 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:76: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getDay())));
^
An error occurred at line: 19 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:79: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getDayOfYear())));
^
An error occurred at line: 20 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:82: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getWeekOfYear())));
^
An error occurred at line: 21 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:85: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getEra())));
^
An error occurred at line: 22 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:88: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getDSTOffset())));
^
An error occurred at line: 23 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:91: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getZoneOffset())));
^
14 errors

at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:120)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:293)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:315)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:326)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:474)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:182)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:471)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2397)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:380)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:533)
at java.lang.Thread.run(Thread.java:536)
--------------------------------------------------------------------
Apache Tomcat/4.1.10
doo_fu 2002-09-25
  • 打赏
  • 举报
回复
2楼的,浏览器显示的出错信息为:

HTTP Status 500 -
--------------------------------------------------------------------
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
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:477)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:182)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:471)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2397)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:380)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:533)
at java.lang.Thread.run(Thread.java:536)

root cause

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 9 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
[javac] Compiling 1 source file
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:43: package dates does not exist
dates.JspCalendar clock = null;
^
An error occurred at line: 9 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:45: package dates does not exist
clock = (dates.JspCalendar) pageContext.getAttribute("clock", PageContext.PAGE_SCOPE);
^
An error occurred at line: 9 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:48: package dates does not exist
clock = (dates.JspCalendar) java.beans.Beans.instantiate(this.getClass().getClassLoader(), "dates.JspCalendar");
^
An error occurred at line: 13 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:61: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getDayOfMonth())));
^
An error occurred at line: 14 in the jsp file: /jsp/dates/date.jsp

Generated servlet error:
D:\tomcat4\work\Standalone\localhost\study\jsp\dates\date_jsp.java:64: package dates does not exist
out.print(JspRuntimeLibrary.toString((((dates.JspCalendar)pageContext.findAttribute("clock")).getYear())));
^

zhu_liping 2002-09-25
  • 打赏
  • 举报
回复
classpath的问题呀,
doo_fu 2002-09-24
  • 打赏
  • 举报
回复
楼上的,e:\WebRoot\WEB-INF\classes\dates\JspCalendar.classes是在的,要不然我用命令行是不可能编译通过的.
(注:C> cd \tomcat\work\Standalone\localhost\Study\jsp\dates
C> javac date_jsp.java
是成功的)
AngusZhang 2002-09-24
  • 打赏
  • 举报
回复
e:\WebRoot\WEB-INF\classes\dates\JspCalendar.classes在不在?如果没有,考过来
www203 2002-09-24
  • 打赏
  • 举报
回复
是不是你BEAN的路径放的不对?
windancery 2002-09-24
  • 打赏
  • 举报
回复
什么错误?把错误代码贴出来

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧