首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java Web Session 登入案例 404 錯誤:web.xml 缺少 Servlet 映射配置

     編輯:程式設計疑難解答

錯誤現象

Tomcat 啟動正常,訪問登入 Servlet 返回 **HTTP 404 (Not Found)**,控制台無異常堆疊。

直接原因

web.xml 中缺少該 Servlet 的 <servlet-mapping> 配置,導致 Tomcat 無法將 URL 路由到 Servlet 類。

標準 web.xml 配置 (Servlet 3.0+ 可用註解替代)

<servlet>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>com.tnt.jsp.LoginJsonServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>
    <url-pattern>/login</url-pattern> <!-- 訪問路徑: https://host:port/app/login -->
</servlet-mapping>

Servlet 3.0+ 註解式配置 (無需 web.xml)

@WebServlet("/login")
public class LoginJsonServlet extends HttpServlet { ... }

**前提**:web.xml 版本聲明 version="3.0" 且 Tomcat 7+,且類在掃描路徑下。

其他可能導致 404 的原因

  • URL 拼寫錯誤 (大小寫、項目上下文路徑)。
  • 專案未正確部署 (檢查 Tomcat wtpwebapps 目錄)。
  • 類名/包名與配置不一致。

編碼問題說明

「保存時選 UTF-8 導致亂碼」通常是**文件實際編碼非 UTF-8** (如 GBK) 但聲明為 UTF-8,或**Tomcat 請求解碼未配置 UTF-8**。參考 [Java Web 中文亂碼徹底解決] 統一配置。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved