java.lang.IllegalStateException: Cannot create a session after the response has been committed

在程序中调用response .sendRedirect("URL")产生如下错误,解决方法  :

JspFactoryImpl: Exception initializing page context
java.lang.IllegalStateException: Cannot create a session after the response has been committed
 at org.apache.coyote.tomcat4.CoyoteRequest.doGetSession(CoyoteRequest.java:1863)
 at org.apache.coyote.tomcat4.CoyoteRequest.getSession(CoyoteRequest.java:1710)
 at org.apache.coyote.tomcat4.CoyoteRequestFacade.getSession(CoyoteRequestFacade.java:313)
 at org.apache.coyote.tomcat4.CoyoteRequestFacade.getSession(CoyoteRequestFacade.java:318)
 at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:224)
 at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:224)
 at org.apache.jasper.runtime.PageContextImpl._initialize(PageContextImpl.java:91)
 at org.apache.jasper.runtime.PageContextImpl.initialize(PageContextImpl.java:67)
 at org.apache.jasper.runtime.JspFactoryImpl.internalGetPageContext(JspFactoryImpl.java:130)
 at org.apache.jasper.runtime.JspFactoryImpl.getPageContext(JspFactoryImpl.java:109)
 at org.apache.jsp.index_transcreen_jsp._jspService(index_transcreen_jsp.java:33)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
 at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:627)
 at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:518)
 at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:448)
 at com.opensymphony.webwork.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:116)
 at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
 at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
 at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)
 at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)
 at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)
 at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
 at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)
 at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)
 at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
 at com.synjones.security.filter.URLFilter.doFilter(URLFilter.java:120)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
 at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)
 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:595)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:432)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:954)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:138)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:595)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:432)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:954)
 at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2459)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:132)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:595)
 at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:593)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:593)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:432)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:954)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:126)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:595)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:432)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:954)
 at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
 at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
 at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
 at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
 at java.lang.Thread.run(Thread.java:534)

产生以上异常,我加了如下更改:

HttpServletResponse res1 = (HttpServletResponse) response;

if (!res1.isCommitted()) {
        res1.sendRedirect(request.getContextPath()
          + "URL");
        return;
       }

没有这个异常提示了!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值