JSP中的异常处理
Java Server Pages 声明了 9 个隐式对象,异常对象就是其中之一。它是Java.lang.Throwable类的对象,用于打印异常。但是,它只能用于错误页面。
JSP 中有两种处理异常的方法。他们是:
- 通过 page 指令的 errorPage 和 isErrorPage 属性
- 通过 web.xml 文件中的
元素
使用页面指令属性处理异常
JSP 中的 page 指令提供了两个用于异常处理的属性。他们是:
- errorPage : 用于站点发生异常时要显示的页面。
句法 :
<%@page errorPage="url of the error page"%>
- isErrorPage :用于将页面标记为显示异常的错误页面。
句法 :
<%@page isErrorPage="true"%>
为了使用上述页面指令处理异常,重要的是要有一个jsp页面来执行正常的代码,这很容易出现异常。此外,将创建一个单独的错误页面,该页面将显示异常。如果异常发生在具有异常倾向代码的页面上,控件将被导航到将显示异常的错误页面。
以下是说明使用页面指令处理异常的示例:
索引.html
HTML
Java
// JSP code to divide two numbers
<% @page errorPage = "error.jsp" %> < %
String num1
= request.getParameter("first");
String num2 = request.getParameter("second");
// extracting numbers from request
int x = Integer.parseInt(num1);
int y = Integer.parseInt(num2);
int z = x / y; // dividing the numbers
out.print("division of numbers is: " + z); // result
% >
Java
// JSP code for error page, which displays the exception
<% @page isErrorPage = "true" %>
Exception caught h1>
The exception is : <%= exception %> // displaying the exception
HTML
Type of Exception
Error page url
HTML
Java
// JSP code to divide two numbers
< %
String num1
= request.getParameter("first");
String num2 = request.getParameter("second");
// extracting the numbers
int x = Integer.parseInt(num1);
int y = Integer.parseInt(num2);
int z = x / y; // dividing
out.print("division of numbers is: " + z); // result
% >
Java
// JSP code for error page, which displays the exception
<%@ page isErrorPage="true" %>
Exception caught
// displaying the exception
The exception is: <%= exception %>
HTML
java.lang.Exception
/error.jsp
一个jsp
Java
// JSP code to divide two numbers
<% @page errorPage = "error.jsp" %> < %
String num1
= request.getParameter("first");
String num2 = request.getParameter("second");
// extracting numbers from request
int x = Integer.parseInt(num1);
int y = Integer.parseInt(num2);
int z = x / y; // dividing the numbers
out.print("division of numbers is: " + z); // result
% >
错误.jsp
Java
// JSP code for error page, which displays the exception
<% @page isErrorPage = "true" %>
Exception caught h1>
The exception is : <%= exception %> // displaying the exception
输出:
索引.html
错误.jsp
使用 error-page 元素 En web.xml 文件处理异常
这是为每个元素指定错误页面的另一种方法,但可以使用
HTML
Type of Exception
Error page url
以下示例说明了使用此技术处理异常:
索引.html
HTML
一个.jsp
Java
// JSP code to divide two numbers
< %
String num1
= request.getParameter("first");
String num2 = request.getParameter("second");
// extracting the numbers
int x = Integer.parseInt(num1);
int y = Integer.parseInt(num2);
int z = x / y; // dividing
out.print("division of numbers is: " + z); // result
% >
错误.jsp
Java
// JSP code for error page, which displays the exception
<%@ page isErrorPage="true" %>
Exception caught
// displaying the exception
The exception is: <%= exception %>
web.xml
HTML
java.lang.Exception
/error.jsp
在这种情况下,输出与前一个类似。