您的位置:首页 > 运维架构 > Tomcat

Eclipse中通过Tomcat运行JavaWeb项目发生内存溢出:Exception in thread "http-bio-8080-exec-2" java.lang.StackOverflow

2019-01-06 16:54 1221 查看
版权声明:转载请注明原文地址。 https://blog.csdn.net/qq_39240270/article/details/85935907

今天在使用TomCat运行Javaweb时抛出异常:

Exception in thread "http-bio-8080-exec-2" java.lang.StackOverflowError
at org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279)
at org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279)
at org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279)
at org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279)
at org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279)
at org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279)
at org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279)

网上查了一下解决办法,开始以为是jvm分配内存不够,加了内存后发现还是报错,重新查看网上的资料说是死循环或者递归的问题,终于在自己的代码中找到问题,其实就是发现是servlet转发时地址写错了,导致死循环,一直递归的调用本类中的方法。
开始时:

修改后:

将地址修改正确后不再报错。
总结:报这种错误时,先检查自己的代码,在检查代码无误后在查看其他方面的错误,不然就是再浪费时间。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐