系统偶尔出现:forward() not allowed after buffer has committed.错误
每天访问次数15万次,出现次数600多次。测试中无法复现。
从log上看,错误都出现在同一个action文件中。
该错误是因为在forward之前,对response进行了操作而导致的
可是,我看了无数遍代码,也没找到forword之前对response的操作。
请问各位高手,会是什么原因会导致该错误,下面是一条错误信息。
2011-12-06-10:44:04,376 INFO
- host:SJSWT47-164.opi.com
- ip:211.137.185.8
- ua:
- error:forward() not allowed after buffer has committed.
##null
##forward() not allowed after buffer has committed.
##com.caucho.server.webapp.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:139)
##com.caucho.server.webapp.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:106)
##org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
##org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
##org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
##org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
##org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
##javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
##javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
##org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:158)
##org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
##org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
##org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
##org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
##org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
##org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
##javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
##javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
##com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:106)
##com.caucho.filters.RewriteFilter.doFilter(RewriteFilter.java:120)
##com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
##org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
##com.xiaonei.wap.leak.filter.LeakUserFilter.doFilter(LeakUserFilter.java:63)
##org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
##com.xiaonei.wap.framework.antispam.filter.WapPageSensitiveWordReplaceFilter.doFilter(WapPageSensitiveWordReplaceFilter.java:45)
##org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
##com.xiaonei.wap.framework.mvc.filter.BannerADFilter.doFilter(BannerADFilter.java:128)
##org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
##com.xiaonei.wap.online.web.filter.OnlineStatusFilter.doFilter(OnlineStatusFilter.java:62)
##org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
##com.xiaonei.wap.framework.mvc.spring.filter.DomainKaixin2RenrenFilter.doFilter(DomainKaixin2RenrenFilter.java:151)
##org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
##org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
##org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
##org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
##org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175)
##org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
##org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
##com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
##com.xiaonei.wap.framework.mvc.filter.PerfFilter.doFilter(PerfFilter.java:47)
##com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
##com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:209)
##com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:173)
##com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:229)
##com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:274)
##com.caucho.server.port.TcpConnection.run(TcpConnection.java:511)
##com.caucho.util.ThreadPool.runTasks(ThreadPool.java:516)
##com.caucho.util.ThreadPool.run(ThreadPool.java:442)
##java.lang.Thread.run(Thread.java:619)
##
------解决方案--------------------
可能是缓存问题吧,