message java.lang.IllegalStateException:没有输出文件夹

Har*_*kur 31 jsp tomcat tomcat6

我是Windows上的Tomcat新手.我正在尝试使用Tomcat部署我在RHEL 5中创建的Java项目.现在我想在窗口上运行该项目.所以我在Tomcat web apps Directory中复制并粘贴了我的项目文件夹

i.e C:\Program Files\apache-tomcat-6.0.37\webapps
Run Code Online (Sandbox Code Playgroud)

但是我无法运行项目,因为我在打开第一个登录页面时面临以下错误.我是否需要在代码或web.xml文件中进行任何进一步更改,因为我现在正在Windows上部署它?

type Exception report

message java.lang.IllegalStateException: No output folder

**Description** The server encountered an internal error that prevented
it from fulfilling this request.

Exception

org.apache.jasper.JasperException: java.lang.IllegalStateException: No output folder
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:538)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:364)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
root cause

java.lang.IllegalStateException: No output folder
    org.apache.jasper.JspCompilationContext.createOutputDir(JspCompilationContext.java:678)
    org.apache.jasper.JspCompilationContext.getOutputDir(JspCompilationContext.java:197)
    org.apache.jasper.JspCompilationContext.getClassFileName(JspCompilationContext.java:514)
    org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:453)
    org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:399)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:585)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.37 logs.
Run Code Online (Sandbox Code Playgroud)

Har*_*kur 55

我已完全访问我的Tomcat目录.现在我没有收到这个错误.谢谢 !!

  • 我启动了tomcat,因为`root`解决了这个问题. (11认同)
  • 这很有帮助,但解决方案并不简单。在 W10 上大约需要 5-10 个步骤。 (2认同)

San*_*ani 19

我在ubuntu 14.04上遇到了类似的问题.我正在做一些分析并手动删除工作文件夹.然后在运行tomcat服务器时,我遇到了同样的异常.问题是,当我们访问tomcat的管理器应用程序时,它需要jsp页面来显示内容,而JSP页面是从生成的类文件呈现的,该文件位于work/Catalina/localhost/....文件夹中.

我手动创建了工作目录,但问题仍未解决.

然后我意识到,因为我手动创建了工作目录tomcat7用户没有在该目录上写入的权限.将工作目录的所有者从root更改为tomcat7

sudo chown tomcat7 work

重启tomcat service tomcat restart.

问题解决了.

希望这可以帮助


Fre*_*eki 5

如果您使用的是Linux/Unix并面临此问题:

脚步:

注意用户和服务,在我的情况下它是tomcat你的可能是其他任何东西......

1. mkdir work
2. sudo chown tomcat work  
3. service tomcat6 restart
Run Code Online (Sandbox Code Playgroud)