将正在正常运行的tomcat打包(使用tar -zcvf命令打的包),然后放到其他服务器上使用非root用户解压(使用tar -zxvf命令)配置好之后,启动tomcat后报错如下

HTTP Status 500 - java.lang.IllegalStateException: No output folder

typeException report

messagejava.lang.IllegalStateException: No output folder

descriptionThe server encountered an internal error that prevented 

it from fulfilling this request.

exceptionorg.apache.jasper.JasperException: java.lang.IllegalStateException: No output folder

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:585)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:391)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 

root causejava.lang.IllegalStateException: No output folder

org.apache.jasper.JspCompilationContext.createOutputDir(JspCompilationContext.java:738)

org.apache.jasper.JspCompilationContext.getOutputDir(JspCompilationContext.java:196)

org.apache.jasper.JspCompilationContext.getClassFileName(JspCompilationContext.java:581)

org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:461)

org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:425)

org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:639)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 

noteThe full stack trace of the root cause is available in the 

Apache Tomcat/7.0.39 logs.

----------------------------------------------------------------------------------------------------------------------------------------

org.apache.jasper.JasperException: java.lang.IllegalStateException: No output folder:

关于这个原因主要是权限的问题,在tomcat/work/Catalina/localhost/,主要是这个目录没有被读写的权限,导致文件不能被编译到该指定的工作目录中,此时我们就要针对与这个目录做一些权限的修改权限至少要达到755或者以上,同时注意此处修改权限必须用root身份进行操作,否则不能进行修改,修改完后编译好的jsp文件就在localhost的目录当中了。发现了问题在于work/Catalina/localhost/中无法生成对应文件,把tomcat整个目录、work整个目录都修改了权限仍然不行。最后到具体的目录tomcat/work/Catalina/localhost/进行修改权限OK。

我遇到的这个报错,是因为使用root启动过一次服务,后来用其他用户进行服务的启动,而在启动之前没有删除tomcat/work/目录下的内容,该目录下还是存在属主为root用户的Catalina目录,在使用其他用户执行启动时,由于该Catalina已存在,就不再重新创建,而是增量修改该目录,但是由于其他用户没有权限修改属主为root的目录和文件,因此报错。建议在每次停tomcat成功后,删除tomcat/work/*;如果不想每次都删除,一定要保证每次启动tomcat使用的用户要严格正确。

java.lang.IllegalStateException: No output folder的更多相关文章

  1. 一个异常org.apache.jasper.JasperException: java.lang.IllegalStateException: No output folder:的解决

    今天对一个WebApp做完修改,导出成war包,再发布到Tomcat7中,居然访问不了了! 同样的问题一周前也出现过,后来一顿鼓捣,又莫名其妙好了,当时认为是Tomcat7闹点小毛病,也没多想. 但是 ...

  2. 访问tomcat出现java.lang.IllegalStateException No output folder错误解决方法

    访问tomcat出现java.lang.IllegalStateException: No output folder错误解决方法 问题:tomcat分为安装版和解压缩版,解压缩版如果解压到安装盘,在 ...

  3. 访问tomcat出现HTTP Status 500 - java.lang.IllegalStateException: No output folder

    问题:tomcat分为安装版和解压缩版,解压缩版如果解压到安装盘,在浏览器中访问http://localhost:8080,可能会出现500错误,错误提示如下:  localhost:8080 jav ...

  4. Tomcat: IllegalStateException: No output folder --reference

    Today, I started to create a couple of JSP pages for the server-side part of my MSc thesis project i ...

  5. java.lang.IllegalStateException: getOutputStream() has already been called for this response

    ERROR [Engine] StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exceptionjava.lang ...

  6. java.lang.IllegalStateException:Web app root system property already set to different value 错误原因及解决 Log4j

    Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口 服务器.NT的事件记录器.UNIX Syslog守护进程等: ...

  7. java.lang.IllegalStateException异常简单分析和简单解决

    我们在做文件上传或者下载,或者过滤等操作时,可能要用到页面的输出流. 例如在JSP使用: response.reset(); response.setContentType(”application/ ...

  8. 关于java.lang.IllegalStateException

    今天调试程序时遇到了java.lang.IllegalStateException org.apache.catalina.connector.ResponseFacade.sendRedirect( ...

  9. junit测试时,出现java.lang.IllegalStateException: Failed to load ApplicationContext

    课程设计要求进行junit测试,我是在已经做好的ssh项目上做的测试,测试类代码如下 package com.zhang.web.services; import static org.junit.A ...

随机推荐

  1. de4dot 反混淆

    de4dot .NET deobfuscator and unpacker. Description de4dot is an open source (GPLv3) .NET deobfuscato ...

  2. sed 删除最后几行 和删除指定行 awk使用

    sed 删除最后几行 和删除指定行   转载原文链接:http://blog.51cto.com/lspgyy/1305489 sed 想删除文件中的指定行,是可以用行号指定也可以用RE来匹配的. 删 ...

  3. python源码

    初学者 GitHub - kennethreitz/pip-pop: Tools for managing requirements files. GitHub - kennethreitz/envo ...

  4. Android 中布局的优化措施都有哪些?

    1.尽可能减少布局的嵌套层级可以使用 sdk 提供的 hierarchyviewer 工具分析视图树,帮助我们发现没有用到的布局.2.不用设置不必要的背景,避免过度绘制比如父控件设置了背景色,子控件完 ...

  5. Elasticsearch 6.2.3版本 string 类型字段 排序 报错 Fielddata is disabled on text fields by default

    背景说明 最近在做一个 Elasticsearch 的分页查询,并且对查询结果按照特定字段进行排序的功能. 但是执行结果却报错,报错信息如下: { "error": { " ...

  6. git 新建项目的一些操作

    Command line instructions Git global setup git config --global user.name "Administrator" g ...

  7. 用edoc2实现上传和下载

    import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import org.apache.http.Htt ...

  8. python基础-输出

    输出helloworld语句       print('helloworld') 换行操作    print('helloworld',‘hellodarling’)

  9. cocos2dx基础篇(1) Cocos2D-X项目创建

    已经入行工作半年多时间了,以前都是把这些东西记录在有道云上面的,现在抽出些时间把以前的笔记腾过来. 具体的环境配置就不用说了,因为现在已经是2018年,只需要下载对应版本解压后就能使用,不用再像多年前 ...

  10. adobe Keychain mac

    Keychain password access This question has been Answered. janec2070563 May 8, 2018 11:07 AM I consta ...