问题描述:学习JSP时尝试使用页面跳转的方式来提示页面错误信息,但是程序运行失败,并没有跳转到错误页。两段代码如下:
第一段(errorShow.jsp):
<!-- 当本文件出现错误时跳转到错误页 -->
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!-- 一旦出现错误,将跳转到error.jsp中 -->
<%@ page errorPage="error.jsp"%>
<%
int i = 10 / 0;//产生异常
%>
<h1>welcome to this page!</h1>
第二段(error.jsp):
<!-- errorShow_demo.jsp文件出现错误时跳转到本页面 -->
<%@ page language="java" contentType="text/html" pageEncoding="utf-8" %>
<!-- 表示此页面可以处理错误 -->
<%@ page isErrorPage="true" %>
<h1>errorShow_demo.jsp文件出现错误!</h1>
原因:Tomcat将error.jsp也认为出现了错误,所以无法显示。
解决办法:在error.jsp中添加如下代码片段:
<%
response.setStatus(200);//状态码可以选择200-203
%>
手动设置一个状态码,表示本页面没有错误,可以正常显示。
另外,给大家一个博客的地址,介绍了JSP中两种错误页跳转的方法:http://blog.youkuaiyun.com/xuexijava/article/details/5456875/
解决JSP页面跳转显示错误的问题
本文探讨了在JSP开发中遇到的页面跳转导致错误未正确显示的问题,详细解释了原因并提供了解决方案,包括在错误页中手动设置状态码以避免Tomcat误判为错误页面。同时推荐了一篇深入解析JSP错误页跳转方法的博客。
872

被折叠的 条评论
为什么被折叠?



