java.lang.IllegalStateException: Cannot call sendRedirect() after the response has been committed

末蓝、 2023-05-21 13:53 89阅读 0赞

报错信息:**java.lang.IllegalStateException: Cannot call sendRedirect() after the response has been committed**


报错信息解析: 在响应后无法调用重定向

Servlet基本概述:

  1. 确定是否有必要使用重定向
  2. 如有必要,请使用重定向
  3. 否则,请继续执行Servlet的工作

报错原因:

  1. 在使用重定向后,我们的页面已经发生了跳转,重定向后的代码将无法执行工作,为了让跳转后的页面不受到任何影响,我们在重定向后加一个return;可能性大
  2. Servlet中doGet()和doPost()方法不完整,比如少写一个doGet()方法
  3. 删除重写后doGet()和doPost()方法中的super.doGet()和super.doPost();在这里我们可以使用一种请求方式来接收参数,比如:客户端使用Post或者Get请求传来参数,我们接收一致使用Get方式接收和响应,这时候我们可以在doPost()方法中,加入这样的代码doPost(request, response);
  4. 检查程序逻辑,是否造成了多次进行跳转

注意: 我们在写重定向路径的时候。重定向因为既支持本项目资源,也支持此服务器内的资源来使用重定向,所以一般重定向的路径是/项目资源名称/需要重定向到的页面或Servlet或者直接写相对路径

发表评论

表情:
评论列表 (有 0 条评论,89人围观)

还没有评论,来说两句吧...

相关阅读