如何使用 JSP 创建一个通用错误页面?
使用 page 属性,JSP 会为你提供针对每个 JSP 指定错误页面的选项。每当页面引发异常时,JSP 容器会自动调用错误页面。
以下是针对main.jsp指定错误页面的示例。若要设置错误页面,请使用<%@ page errorPage = "xxx" %>指令。
<%@ page errorPage = "ShowError.jsp" %> <html> <head> <title>Error Handling Example</title> </head> <body> <% // Throw an exception to invoke the error page int x = 1; if (x == 1) { throw new RuntimeException("Error condition!!!"); } %> </body> </html>
接下来我们将编写一个错误处理 JSP ShowError.jsp(如下所示)。请注意,错误处理页面包括指令<%@ page isErrorPage = "true" %>。此指令将导致 JSP 编译器生成异常实例变量。
<%@ page isErrorPage = "true" %> <html> <head> <title>Show Error Page</title> </head> <body> <h1>Opps...</h1> <p>Sorry, an error occurred.</p> <p>Here is the exception stack trace: </p> <pre><% exception.printStackTrace(response.getWriter()); %></pre> </body> </html>
访问 **main.jsp**,你将接收类似于以下内容的输出−
java.lang.RuntimeException: Error condition!!! ...... Opps... Sorry, an error occurred. Here is the exception stack trace:
广告