我在日食動態Web項目,該項目使用註解來這樣的映射的servlet:添加錯誤頁面區塊在Tomcat中的所有servlet 7
@WebServlet("/LoginController")
public class LoginController extends HttpServlet {
....
}
我也有使用這些小服務程序,類似這樣的jsp頁面:
<form method="post" action="LoginController">
它所有的工作就像一個字符,直到我決定添加錯誤404
和500
錯誤頁面。 Google上的一些搜索帶我到java2s,我發現我必須修改web.xml
文件來指定錯誤頁面。但我的項目沒有在WEB-INF
目錄下的web.xml
文件(順便說一句,我使用Eclipse Indigo作爲IDE和Tomcat 7.0.14)。所以我加了一個如下:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<error-page>
<error-code>
404
</error-code>
<location>
/404.html
</location>
</error-page>
<error-page>
<error-code>
500
</error-code>
<location>
/500.html
</location>
</error-page>
</web-app>
這就引入了一個新問題。我的servlet不再工作了!我所有的JSP都正常工作。但是對我的servlet的所有請求都帶我進入404錯誤頁面。例如,我可以得到一個登錄表單,因爲JSP的工作正常。但是,當我將我的登錄表單提交到LoginController
時,它會顯示404錯誤頁面。
我認爲可以通過使用web.xml
文件來解決servlet映射而不是WebServlet
註解。但是有沒有一種方法可以使用WebServlet
註釋並提供錯誤頁面?我會很高興,如果web.xml
可以避免顯示錯誤頁面。另外,我不喜歡編輯tomcat的任何配置文件。那麼,我該如何解決這個問題呢?
這解決了我的問題。謝謝。 +1! – Jomoos 2012-01-01 13:20:06