大家帮忙看看,出了一个异常,找不到原因了。

公司的项目是s1sh 的,现在在action执行完相应代码之后findForward到一个jsp页面A。
页面A引用了页面B,页面B引用(jsp:include)了页面C。页面C中 link 了一个css

<link href="<%=request.getContextPath()%>/webapps/scripts/lighttree/jquery.lightTreeview.css" rel="stylesheet" type="text/css" />
<link href="<%=request.getContextPath()%>/webapps/styles/left.css" rel="stylesheet" type="text/css" />

现在报错:

java.lang.IllegalStateException: Cannot forward after response has been committed
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:312)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:388)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at org.apache.taglibs.standard.tag.common.core.ImportSupport.acquireString(ImportSupport.java:296)
at org.apache.taglibs.standard.tag.common.core.ImportSupport.doEndTag(ImportSupport.java:161)
//主要报错地方
at org.apache.jsp.webapps.pages.netTransport.clientBaseInfo_jsp._jspx_meth_c_005fimport_005f0(clientBaseInfo_jsp.java:811)
at org.apache.jsp.webapps.pages.netTransport.clientBaseInfo_jsp._jspService(clientBaseInfo_jsp.java:518)

clientBaseInfo_jsp.java:811 行是 out.write("\t\t\t\t\t\t");

只要删除了哪个css的引用项目就可以正常运行。ABC三个页面从前用都是好好的,也没有做什么大的改动。但是只要include B也面的jsp都会报错。请大家帮忙分析下具体的原因。
...全文
193 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
BearKin 2011-10-12
  • 打赏
  • 举报
回复
....
简单的说 假设你请求的某个页面已经开始跳转到另外一个页面 可是在跳转操作的后面还在向跳转前的页面输出内容 就会出现这个异常

确认方式:
检查JSP生成的java文件看看生成的代码是否的确有这样的行为
解决方式:
取消这样的行为
Tyler_Cheung 2011-10-12
  • 打赏
  • 举报
回复
request.contextPath/webapps/scripts/lighttree/jquery.lightTreeview.css

pageContext.request.contextPath/webapps/scripts/lighttree/jquery.lightTreeview.css
wenjie4892543 2011-10-11
  • 打赏
  • 举报
回复
一个 jsp有800 多行 代码 贴出来看看
这个是错误是由于response多次提交或者是由于有页面显示后仍然含请求转向产生的,就是说程序在return之前就已经执行了跳转或者执行过response,之后遇到return的话,程序想再次执行跳转,也就是重定向,这时功能也许会实现了,但是控制台会报错
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hua19881008 的回复:]
没说清楚啊,路径问题

[/Quote]

回大神的话、不是路径问题、
phh1989 2011-10-11
  • 打赏
  • 举报
回复
Cannot forward after response has been committed

这个问题在学校做项目的时候就遇到过,很恶心的一个问题,当初我们认为是“无法在响应已经提交后跳转”,一直在找那个地方出错,但是恶心的是,项目用着用着又没问题了,但用着用着又突然出问题了。当初一直都纠结没办法解决,临时的策略是把项目重新发布,但过一段时间又不行了。。。至今无法理解。。等待大神给出答案。。。
临轩 2011-10-11
  • 打赏
  • 举报
回复
没说清楚啊,路径问题
  • 打赏
  • 举报
回复
自己沙发、、就没人回复下么、哪怕是灌水呢、、

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧