本文實例講述了JSP中內(nèi)建exception對象時出現(xiàn)500錯誤的解決方法。分享給大家供大家參考,具體如下:
嘗試使用JSP的內(nèi)建exception對象,寫了下面三個文件。思路很簡單,文件index若提交字串為空,則get拋出異常,交由error.jsp處理。但實際卻不能正常運行,會出現(xiàn)IE的500錯誤頁面。環(huán)境為Tomcat 5.5,IE6.0。
在sun的論壇上有人貼出了原因,是IE的某個設置。Tomcat5.0以后的版本error page在處理時會返回error code 500。而IE得到code 500后會檢查該頁面的長度,當長度低于某個值時,它會用自己默認的500出錯頁面來代替制定的error page。它稱之為“用戶友好性”(這個問題耗了我不少時間,一點也不友好來著)。
那么解決方法可以是修改IE
設置:取消IE“工具--Internet選項--高級--顯示友好HTTP錯誤信息”選項;或者增加你的error page的長度。
index.jsp
html> head> title>index/title> head> body> form action="get.jsp" method="get"> input type="text" name="text">br> input type="submit" value="submit"> /form> /body> /html>
get.jsp
%@page language="java" errorPage="error.jsp"%> html> head> title>index/title> head> body> % String getText = request.getParameter("text"); out.print(getText); if (getText.equals("")) { out.print("empty"); throw new Exception("empty value"); } %> /body> /html>
error.jsp
%@page language="java" isErrorPage="true"%> html> head> title>index/title> head> body> % out.print(exception.getMessage()); %> /body> /html>
個人總結(jié)
所謂增加長度,就是在error.jsp文件中,多復制些文字內(nèi)容,就能正常運行了。
希望本文所述對大家JSP程序設計有所幫助。