Java如何创建JSP错误页面以处理异常?

在此示例中,您将学习如何在JSP页面中处理异常。JSP具有用于错误处理的内置机制,这是一个特殊页面,可用于处理Web应用程序中的每个错误。要将页面定义为错误页面,我们使用page指令,isErrorPage并将值设置为启用属性true。

这是一个JSP错误页面的示例:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page isErrorPage="true" %>
<!DOCTYPE html>
<html>
<head>
    <title>Error Page</title>
</head>
<body>
<h1>An error has occurred.</h1>

<div style="color: #F00;">
    Error message: <%= exception.toString() %>
</div>
</body>
</html>

我们已经定义了错误页面。下一步是如何在发生未捕获的异常时告诉其他JSP页面使用错误页面来处理错误。为此,我们再次使用page指令。errorPage将此指令的属性设置为指向错误页面。例如,在下面的示例中,我们将其设置为errorPage.jsp。

如果我们尝试访问errorTest.jsp下面的代码段中所示的。它将引发异常,因为我们尝试将无效的字符串转换为数字。由于我们不在页面中处理错误,因此将显示错误页面并显示异常消息。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page errorPage="/errorPage.jsp" %>
<html>
<head>
    <title>My Sample Page</title>
</head>
<body>
<h1>This page throws an error:</h1>

<%
    int number = Integer.parseInt("Hello, World!");
%>
</body>
</html>