java.lang.IllegalStateException: No output folder

本文解决了一个在Tomcat7环境下访问本地服务器出现的HTTP状态500问题,详细介绍了如何通过修改工作目录的权限来解决No output folder的异常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

tomcat 7环境变量配置好了,jdk运行正常,为什么访问本地服务器出现这问题?

关键是在MyEclipse中启动tomcat会出问题,但是单独启动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。

转载于:https://www.cnblogs.com/conter/p/6857833.html

java.lang.IllegalStateException: No properties是一个异常,表示在代码中找不到配置属性。这个异常通常发生在使用Spring Boot时,没有正确配置@ConfigurationProperties注解的情况下。 解决这个问题的方法是确保在需要配置属性的类上添加@ConfigurationProperties注解,并在属性的getter和setter方法上添加@Value注解。这样Spring Boot就能正确地读取和注入配置属性。 以下是一个示例代码,演示了如何解决java.lang.IllegalStateException: No properties异常: ```java import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "myapp") public class MyAppProperties { private String property1; private int property2; public String getProperty1() { return property1; } public void setProperty1(String property1) { this.property1 = property1; } public int getProperty2() { return property2; } public void setProperty2(int property2) { this.property2 = property2; } } ``` 在上面的示例中,我们创建了一个名为MyAppProperties的类,并在类上添加了@ConfigurationProperties注解,并指定了属性的前缀为"myapp"。然后,我们定义了两个属性property1和property2,并为它们分别提供了getter和setter方法。 通过这样的配置,Spring Boot就能正确地读取和注入配置属性,避免了java.lang.IllegalStateException: No properties异常的发生。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值