2012-10-10 67 views
0

我已經查看了關於此問題的所有其他問題(並且有很多問題),並且它們最終都會因地址錯誤或錯誤配置的servlet映射或類似的。我嘗試過所有這些東西,每當我嘗試從我的servlet訪問一個頁面時,我仍然會返回一個404錯誤。使用Eclipse和Tomcat從Servlet發生404錯誤6

這裏的servlet代碼(從mkyong的網站採取了基本的Hello World示例)

/** 
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) 
*/ 
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     PrintWriter out = response.getWriter(); 
     out.println("<html>"); 
     out.println("<body>"); 
     out.println("<h1>Hello World!</h1>"); 
     out.println("</body>"); 
     out.println("</html>"); 
} 

而這裏的部署描述符

<servlet> 
    <description></description> 
    <display-name>TestServlet</display-name> 
    <servlet-name>TestServlet</servlet-name> 
    <servlet-class>com.TestServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>TestServlet</servlet-name> 
    <url-pattern>/testservlet</url-pattern> 
</servlet-mapping> 

這裏我的servlet定義和映射就是我得到的錯誤

HTTP Status 404 - /testserver/testservlet 
type Status report 
message /testserver/testservlet 
description The requested resource (/testserver/testservlet) is not available. 
Apache Tomcat/6.0.33 

有人知道什麼可能導致這種情況?

編輯:我只是測試這裏

http://www.ibm.com/developerworks/opensource/library/os-eclipse-tomcat/

給出的JSP和Servlet的Hello World和它工作得很好,所以我覺得這個問題是我的servlet。任何人有什麼想法可能是錯誤的嗎?

+0

你如何訪問你的servlet? – HashimR

+0

訪問localhost:8080/testserver/testservlet –

+0

$ {TOMCAT_HOME}/logs目錄中的日誌文件中是否有任何錯誤? –

回答

0

您需要指定war文件的名稱。如果你有一個名爲'testme.war'的war文件,你必須像這樣訪問它。

本地主機:8080/TESTME /的TestServlet

+0

當我構建項目時,Eclipse不會創建戰爭文件,也許這是問題的根源? (Tomcat沒有什麼可運行的?)。我已經將項目添加到Eclipse中的tomcat服務器上,所以我只是假設它會處理所有這些。我需要做些什麼來創建war文件並將其部署到Tomcat? –

0

根據你的映射,你應該通過訪問它:http://localhost:8080/testservlet

在什麼地方 「TESTSERVER」 從何而來?你有什麼理由使用它?

+0

這是Eclipse中服務器項目的名稱 –

相關問題