问题描述:使用页面跳转的方式来提示页面错误信息,但是程序运行失败,并没有跳转到错误页。
两段代码如下:
第一段(error.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>
第二段(Iserror.jsp):
<!-- errorShow_demo.jsp文件出现错误时跳转到本页面 -->
<%@ page language="java" contentType="text/html" pageEncoding="utf-8" %>
<!-- 表示此页面可以处理错误 -->
<%@ page isErrorPage="true" %>
<h1>error.jsp文件出现错误!</h1>
原因:Tomcat将Iserror.jsp也认为出现了错误,所以无法显示。
解决办法:在Iserror.jsp中添加如下代码片段:
<%
response.setStatus(200);//状态码可以选择200-203
%>
手动设置一个状态码,表示本页面没有错误,可以正常显示。