2011-06-21 44 views
4

我使用JSF2在Apache Tomcat(版本7)上開發Web應用程序。最終用戶可能會對Web應用程序的地址欄感到厭煩。我想對用戶調用不存在的子頁面(通常會導致未找到Tomcat文件頁面("The requested resource() is not available."))或調用應用程序時未指定首頁(如http://localhost:8080/App/)的情況下,強制實施默認行爲。希望的行爲將重定向用戶到一個自定義頁面與更多的信息比默認的服務器錯誤信息。從Tomcat中的不可用資源重定向

我還沒有想出我的JSF應用程序和Tomcat之間的可用鏈接我試圖解決這個問題,使用Phase Listener,但它不起作用 - 因爲沒有與我的應用程序相關的頁面被請求。如何在上述技術環境中實現這一點?

+0

我們的答案是否能解決您的問題?如果是這樣,請如此善良,並標出正確的答案! ;) –

+1

@donneo:根據OP的問題歷史,他已經知道事情在這裏工作。 – BalusC

+0

確認,我確實:)但我並沒有永久登錄到SO,所以在提出問題和處理傳入答案之間會有一些時間滯後。 –

回答

4

您可以指定在部署描述符自己errorpages(web.xml中):

Errorpages in web.xml

,如果你想顯示一個錯誤,你甚至可以定義特定的異常錯誤頁面,即臭名昭着的ViewExpiredException的頁面。

我希望這有助於!

+1

謝謝你的回答。它獲得了「接受的答案」,比BalusC的鏈接回答更詳細。 –

3

您可以定義自定義HTTP 404錯誤頁面的位置在web.xml

<error-page> 
    <error-code>404</error-code> 
    <location>/errorpages/404.html</location> 
</error-page> 
+1

快速和像平常一樣有幫助。謝謝! –