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:439)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:497)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
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:105)
org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:929)
org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:758)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:407)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:497)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
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.30 logs.
解决办法:将jdk/lib/tools.jar 拷贝到 tomcat/common/lib下重新启动tomcat即可
问题原因:不详
Apache Tomcat/5.0.30
分享到:
相关推荐
在Tomcat的`conf/web.xml`配置文件中,你可以找到关于JSP编译的相关设置。其中,`javax.servlet.jsp.jstl.core.LogicalView`和`org.apache.jasper.Constants`这两个servlet定义了JSP的编译路径。默认情况下,JSP页面...
编译源码时,会用到`ecj.jar`,这是Eclipse Java Compiler的jar包,用于编译JSP文件。 6. **其他依赖库**:Tomcat源码中还包括了其他一些必要的库,如`servlet-api.jar`、`jsp-api.jar`等,这些都是Java Web应用的...
5. **部署与运行**:编译完成后,可以设置Tomcat6作为服务启动,通过修改conf/server.xml配置文件来配置端口、应用上下文路径等。然后,使用`bin/startup.sh`(Unix/Linux)或`bin/startup.bat`(Windows)脚本启动...
在编译Tomcat时,通常会依赖于servlet-api.jar和jsp-api.jar这两个文件,它们通常位于Tomcat的lib目录下。 五、Apache Tomcat Native Library 为了提高性能,Tomcat提供了一个原生库(Tomcat Native),它允许...
【手工编译jsp】是一个关于Java Web开发中的特殊主题,主要涉及如何在没有使用Web容器(如Tomcat、Jetty等)的情况下,直接对JSP(JavaServer Pages)页面进行预编译为Java类的过程。这个过程对于理解JSP的工作原理...
2. **目录结构**:Tomcat的源码目录通常包含`conf`(配置文件)、`webapps`(Web应用部署目录)、`work`(编译JSP后的临时文件)、`logs`(日志文件)等关键部分。 3. **生命周期管理**:Tomcat对Web应用程序和...
3. 部署应用:启动Tomcat后,浏览器访问`http://localhost:8080/myjspapp/index.jsp`,如果JSP文件正确,你应该能看到相应的输出。 **五、web.xml配置** `web.xml`是Web应用的部署描述符,用于定义Servlet、过滤器...
总的来说,将JSP编译打包成jar是一个将静态的JSP文件转换为可执行的Servlet代码,并利用构建工具Ant完成打包的过程,这样可以方便地在不支持JSP的环境中运行和部署。这个过程涉及到JSP、Servlet、Ant构建工具以及web...
JSP文件通常包含HTML标记、脚本元素、指令以及声明,通过Web容器(如Tomcat)解析并执行,将结果返回给客户端。在"jsp+Tomcat+SQL server网上书店的开发"项目中,JSP主要负责展示页面内容,处理用户请求,并与后台...
- **JSP编译**:Tomcat如何将JSP文件编译成Java类,并最终生成Servlet。这涉及到JSP生命周期、EL表达式和JSTL的理解。 - **连接器(Connector)与引擎(Engine)**:Tomcat的架构基于Catalina组件,连接器负责接收...
4. **运行时管理**:Tomcat根据开发模式(`development`或非`development`)和配置参数来决定何时重新编译JSP文件。在开发模式下,每次请求前都会检查源JSP文件是否更新。在非开发模式下,如果设置了`checkInterval`,...
总的来说,成功编译Tomcat源码需要对Java Web技术有深入理解,包括Servlet、JSP、MVC模式以及构建工具的使用。遇到问题时,查阅官方文档、社区论坛和开发者邮件列表都是解决问题的有效途径。通过解决这些问题,你...
Tomcat作为JSP容器,能够编译JSP文件为Servlet,然后执行这些Servlet来生成动态内容。 “标签”中提到了“tomcat6.0”、“JSP”和“测试”,这进一步强调了这个压缩包的重点内容。Tomcat 6.0是Tomcat的一个版本,...
例如,可以查看Catalina、Coyote、Jasper等核心组件的实现,理解它们如何处理HTTP请求,如何管理Servlet容器,以及如何解析和执行JSP文件。通过这种方式,读者不仅可以理论学习,还可以动手实践,加深对Tomcat工作...
- 保存文件名为`Test.java`,并在命令行中编译运行该程序,验证是否成功输出`This is a test program.`。 - 启动Tomcat后,在浏览器中访问`http://localhost:8080`,确认是否能看到Tomcat的欢迎页面。 ##### 第三...
在Tomcat中,JSP文件被编译成Servlet,然后执行生成动态内容。JSP使得开发者能够将表现层和业务逻辑分离,提高代码的可维护性和复用性。 4. 集成与应用:在实际开发中,开发者通常会在JSP页面中编写HTML结构,然后...
保存为`Test.java`文件后,在命令行编译并运行该程序,如果能看到输出"This is a test program.",则表示Java SDK安装成功。 **2. 安装 Tomcat** 接下来,需要安装Tomcat服务器。可以从Apache官方网站下载:...