如果我們在瀏覽器地址欄亂敲的時候,所敲入的所有未定義的URL都能被程序捕捉到,然后轉到一個自制的404錯誤處理頁面。
先看效果圖
登陸頁面
主頁面
隨便輸加上標點符號
隨便輸的action
方法一 編寫 web.xml
1
2
3
4
|
< error-page > < error-code >404</ error-code > < location >/404.html</ location > </ error-page > |
注:
1.所以未找到的404錯誤都會轉到 404.jsp 接受處理。
2.但是經過試驗,我發現以.action結尾的URL會先被struts2框架所捕獲,而不會直接轉入web.xml中配置的處理頁面。這樣,如果在struts.xml沒有配置相應的action。
前臺報錯:
后臺報錯:
方法二 編寫 struts.xml
1
2
3
4
5
|
< default-action-ref name = "pageNotFund" /> < action name = "pageNotFund" > < result >/404.html</ result > </ action > |
注:
1.pageNotFund 是自己定義的一個acion,它的結果頁面為 /404.html 。
2.pageNotFund 請求的action中也可以處理其他結果 。
總結
當訪問一個不存在頁面時,一般顯示404錯誤,這是一個很不友好的頁面,很多網站都會讓應用捕獲這個404錯誤,并跳到指定的友好頁面。隨便輸入,再也見不到404了。
以上就是本文的全部內容,希望對大家的學習有所幫助。