jsp中錯誤處理頁面
舉例說明:mustBeError.jsp
<%@ page contentType="text/html; charset=gb2312"
language="java"import="java.sql.*,javax.servlet.*,javax.servlet.http.*" errorPage="error.jsp" %>
<%
//這個頁面一定會出錯。
int i=0;
int j=1;
out.println(j/i);
%>
在此中通過errorPage="error.jsp"來指定出錯時錯誤處理頁面
<--------------------------->
error.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" isErrorPage="true"import="java.io.*"%>
<html>
<head>
<title>出錯了!</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
出錯了!<br>
發生了以下的錯誤:
<br><hr><font color=red><hr>
getMessage():<br>
<%=exception.getMessage()%><br><hr>
getLocalizedMessage():<br>
<%=exception.getLocalizedMessage()%><br><hr>
PrintStatckTrace():<br>
<%
StringWriter sw=new StringWriter();
PrintWriter pw=new PrintWriter(sw);
exception.printStackTrace(pw);
out.println(sw);
%><br>
</font></body>
</html>
在error.jsp中,page指令中指定:isErrorPage="true"
<---------------------->
在web.xml中聲明異常和錯誤頁面
例如:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
version="2.4">
<error-page>
<error-code>404</error-code>
<location>/pageNotFound.html</location>
</error-page>
<error-page>
<exception-type>java.lang.NumberFormatException</exception-type>
<location>/NumberFormatException.html</location>
</error-page>
</web-app>
說明:指定錯誤代碼為404是,調用/pageNotFound.html
也可以指定錯誤類型如:java.lang.NumberFormatException,出現此錯誤類型是調用/NumberFormatException.html