`
hyz301
  • 浏览: 373935 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Cannot forward after response has been committed问题分析及解决

阅读更多

问题描述:

         java.lang.IllegalStateException:Cannot forward after response has been committed

   大致意思,无法在response提交后完成跳转。

错误代码:

 

servlet.getServletContext().getRequestDispatcher("/DateUpdatePage.do").forward(request, response); 

 错误原因:

 

这个是错误是由于response多次提交或者是由于有页面显示后仍然含请求转向产生的,就是说程序在return之前就已经执行了跳转或者执行过response,之后遇到return的话,程序想再次执行跳转,也就是重定向,这时功能也许会实现了,但是控制台会报错,所以控制好跳转是很重要的。

解决办法:

return null

方式一:修改后代码:

 

servlet.getServletContext().getRequestDispatcher("/DateUpdatePage.do").forward(request, response); 
return null;

  方式二:

RequestDispatcher rd = request.getRequestDispatcher("/error.jsp");  
try {  
      rd.forward(request, response);  
}catch(Exception e){}  

 改成了如下:

RequestDispatcher rd = request.getRequestDispatcher("/error.jsp");  
try {  
       rd.forward(request, response);  
            return;  
     }catch(Exception e){} 

 这段代码是在一个方法里,并且在调用这个方法的的方法里面,就在该方法的后也加了一个return;

 

 

 

 

0
0
分享到:
评论

相关推荐

    Cannot forward after response has been committed

    通过仔细审查代码、优化逻辑和正确处理异常,可以有效地解决"Cannot forward after response has been committed"的问题。 关于提供的"filterTest"文件,可能是用于测试过滤器功能的示例代码。分析和理解这段代码...

    java.lang.IllegalStateException: Cannot call sendError() after the response has

    在Java的Web开发中,`java.lang.IllegalStateException: Cannot call sendError() after the response has been committed` 是一个常见的错误,通常发生在尝试在HTTP响应已经发送到客户端之后调用`sendError()`方法...

    JSP三种跳转方式 超级好的范例

    java.lang.IllegalStateException: Can't sendRedirect() after data has been committed to the client. ``` 解决办法是在进行任何输出之前先检查是否需要重定向。 #### 二、`response.setHeader("Location", "")`...

    Git-2.21.0-64-bit.zip

    prerequisite patches in an unstable way, which has been updated to compute in a way that is compatible with "git patch-id --stable". * The "git log" command by default behaves as if the --mailmap ...

    springboot基本使用的一个文档。

    使用@SessionAttributes 和@ResponseBody 或者@RestController 注解配合使用时,可能会报 Cannot create a session after the response has been committed 错误。解决方法是在 return 之前自己创建 session。 本...

    xfs_log_priv.rar_There There

    These dummy transactions get committed when everything is idle (after there has been some activity).

    response jsp 中的重要知识点

    - 而`RequestDispatcher.forward(ServletRequest request, ServletResponse response)`则是在服务器端将请求转发到另一个资源,不改变当前URL。 7. **写入响应体** 通过`getOutputStream()`或`getWriter()`方法,...

    解决Struts2中下载文件时点击取消按钮后台报错问题

    本文将详细解析这个问题,并提供解决方案。 首先,我们需要理解Struts2中的文件下载原理。当用户请求下载文件时,服务器会读取文件内容并将其通过HTTP响应流返回给客户端。一旦客户端开始接收数据,即使用户取消...

    HttpWebRequest出错.Section=ResponseHeader Detail=CR

     Section=ResponseHeader Detail=CR 后面必须是 LF The server committed a protocol violation. Section=ResponseHeader Detail=CR must be followed by LF 主体意思是微软没有容忍不符合RFC 822...

    Spring事务失效问题分析及解决方案

    Spring事务失效问题分析及解决方案 在本文中,我们将详细介绍 Spring 中的事务失效问题分析及解决方案。Spring 事务机制是基于 AOP 实现的,通过使用 @Transaction 注解来标注事务方法。然而,在实际开发中,可能会...

    SQL Server死锁产生的原因及解决办法

    例如,使用较低的隔离级别如读已提交(Read Committed)可能会减少死锁,但可能引入其他并发问题。因此,选择合适的隔离级别是关键。 3. **使用`WITH (UPDLOCK)`提示**:在读取数据时,如果知道之后会进行更新操作...

    55 Read Committed隔离级别是如何基于ReadView机制实现的?l.pdf

    在探讨数据库事务隔离级别时,Read Committed(简称RC)是一个重要的概念。RC隔离级别意味着,当事务运行期间,如果别的事务对数据进行修改并且提交了,当前事务是可以读取到这些修改后的数据的。然而,这也导致了不...

    svn关键词BASE, HEAD, COMMITTED, PREV的深入理解.rar

    例如,当你发现某个错误并想要回滚到某个已知的正常版本时,可以使用PREV和COMMITTED来确定问题出现的时间点。同时,BASE和HEAD用于保持你的工作副本与远程仓库同步,确保你始终在处理最新的代码。 在实际开发中,...

    temboard-master_python_Committed_

    【标题】"temboard-master_python_Committed_" 指向的是一个与 PostgreSQL 数据库管理和监控相关的项目,其中可能包含了使用 Python 编写的工具或模块。"Committed" 在这里很可能是指 PostgreSQL 的事务隔离级别之一...

    Websphere下部署与tomcat程序配置的差异

    修改 Websphere 的 JSP 编译 JDK 版本可以解决一些问题。修改方法是,找到发布之后的应用目录,修改对应的配置文件,例如:\IBM\WebSphere\AppServer\profiles\AppSrv01\config\cells\zd-44bca248e33bNode01Cell\...

    MYSQL锁表问题的解决方法

    如果手动杀掉一个进程仍不能解决问题,可以编写脚本批量杀死所有锁定的进程。在提供的示例中,通过grep筛选出"Locked"状态的进程,然后循环执行`KILL`命令。 2. **批量处理锁定进程** 在某些情况下,可能需要批量...

    MySQL-并发事务问题及解决方案.docx

    本文将深入探讨并发事务带来的三种主要问题:脏读、不可重复读和幻读,以及MySQL如何通过事务隔离级别来解决这些问题。 首先,脏读(Dirty Reads)指的是一个事务读取到了另一个未提交事务的数据,导致数据的不一致...

    Efficient Proofs that a Committed Number Lies in an Interval.pdf

    本文提出的新方法为证明承诺数字位于特定区间提供了一个高效且精确的解决方案。这一成果不仅在理论层面具有重要价值,而且在实践中也有着广阔的应用前景,特别是在信息安全、加密技术和隐私保护等领域。随着技术的...

    关于mysql的一些常见问题和解决方案

    MySQL 在实际使用中会遇到多种问题,但通过合理的配置、优化和管理可以有效解决问题。对于难以解决的问题,建议查阅官方文档或咨询专业人员。维护良好的 MySQL 数据库不仅可以提高数据的安全性,还可以显著提升应用...

    a project model for the FreeBSD Project.7z

    Number of committers has been determined by going through CVS logs from January 1st, 2004 to December 31st, 2004 and contributors by going through the list of contributions and problem reports. ...

Global site tag (gtag.js) - Google Analytics