jsp提供了很好的错误能力,除了在java代码中可以使用try语句,还可以指定一个特殊页面,当页面应用遇到未捕获的异常时,用户将看到一个精心设计的网页解释发生了什么,而不是一个用户无法理解的错误信息。
请使用page指令的isErrrorPage属性(属性值必须为True)来标识一个jsp页面是错误页面。
<%@page isErrorPage="true"%> <html> <head> <title>Error</title> </head> <body> An error has occurred.<br/> ERROR message: <% out.println(exception.toString()); %> </body> </html>
其他需要防止未捕获的异常的页面使用page指令的errorPage属性来指向错误处理页面。
buggy.jsp页面:
<%@page errorPage="errorHandler.jsp"%> Deliberrately throw an exception <% Integer.parseInt("Throw me");<%--字符串没有整数,所以会报错--%>%>
运行的buggy.jsp会抛出一个异常,但我们不会看见由servlet/容器生成的错误消息,看到的是errorHandler.jsp页面的内容。