我想你問的是什麼包含在異常變量。
exception
是JSP implicit可變
的exception
變量包含拋出之前的JSP頁面上有errorPage
指令轉發到一個網頁,一個isErrorPage
指令任何異常。
例如
如果你有哪些拋出異常的JSP(index.jsp)之後(我特意通過解析字符串拋出NumberFormatException異常,顯然你不會寫一個網頁,這樣做,它只是一個例子)
<%@ page errorPage="error.jsp" %>
<% Integer.parseInt("foo"); //throws an exception %>
這將會轉發到error.jsp文件,
如果是的error.jsp
<%@ page isErrorPage = "true"%>
<body>
<h2>Your application has generated an error</h2>
<h3>Please check for the error given below</h3>
<b>Exception:</b><br>
<font color="red"><%= exception.toString() %></font>
</body>
因爲它具有
<%@ page isErrorPage = "true"%>
頁面指令,隱含變量exception
將包含在前面的JSP拋出的異常
所以,當你要求的index.jsp時,會拋出異常,並轉發到error.jsp文件將輸出HTML一樣這
<body>
<h2>Your application has generated an error</h2>
<h3>Please check for the error given below</h3>
<b>Exception:</b><br>
<font color="red">java.lang.NumberFormatException: For input string: "foo"</font>
</body>
由於@JB Nizet提到的例外是一個instanceof的Throwable調用exception.getMessage()
For input string: "foo"
,而不是java.lang.NumberFormatException: For input string: "foo"