jsp的errorpage功能__js
來源:互聯網
上載者:User
象普通的java程式一樣,可以把異常引入到
jsp中。如果在執行
jsp的java代碼時發生異常,可以用下面的指令將http請求轉寄給另一個專門處理異常的網頁:
<%@ page
errorPage="
errorpage.
jsp"%>
在處理異常的網頁中,應該通過如下語句將該網頁生命為異常處理網頁
<%@ page isErrorPage="true"%>
在處理異常的網頁中可以直接存取exception隱含對象,擷取詳細的異常資訊,如
<p>
錯誤原因為:<% exception.printStackTrace(new PrintWriter(out));%>
</p>
下面建立一個可能會拋出異常的
jsp網頁jspSum.
jsp,去兩個參數求和。如果客戶輸入的參數不能轉化為整數,就會拋出NumberFormatException,這時客戶請求會轉道
errorpage.
jsp
jspSum.
jsp
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page
errorPage="
errorpage.
jsp" %>
<html><head><title>jspSum.
jsp</title></head>
<body>
<%!
private int toInt(String num){
return Integer.valueOf(num).intValue();
}
%>
<%
int num1=toInt(request.getParameter("num1"));
int num2=toInt(request.getParameter("num2"));
%>
<p>
運算結果為:<%=num1%>+<%=num2%>=<%=(num1+num2)%>
</p>
</body></html>
errorpage.
jsp
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page isErrorPage="true" %>
<%@ page import="java.io.PrintWriter" %>
<html><head><title>Error Page</title></head>
<body>
<p>
你輸入的參數(num1=<%=request.getParameter("num1")%>,
num2=<%=request.getParameter("num2")%>)有錯誤
</p>
<p>
錯誤原因為:<% exception.printStackTrace(new PrintWriter(out));%>
</p>
</body></html>