1. 程式人生 > 程式設計 >IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題

IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題

這個問題困擾我整整一天一夜,先是程式碼檢查路徑設定找不出問題,後面換tomcat版不行,抱著僥倖心理換IDEA版本意料之中還是沒解決問題。

都快想禿了最後終於完美解決了。

場景描述:

  IDEA中新建web專案

  tomcat正常

  HTML通過XML配置檔案提交表單正常

  當HTML通過Servlet註解名提交表單時404

IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題

問題分析:

  通常404是路徑出現問題,此時第一反應是form中action值和servlet註解值出錯,檢查後

屬性值匹配。檢查遊覽器訪問路徑最終找到問題出在啟動虛擬路徑上。

  IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題

如圖訪問login.html時是通過 /test 這個虛擬路徑訪問的。但是提交表單後遊覽器中虛擬路徑

消失而是直接通過servlet註解名提交表單資料,見圖:

IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題

明白這裡解決問題就簡單了,想到的有兩種解決方法:

  方法一:給servlet註解的對映加上虛擬路徑(沒啥意義)

  方法二:配置Tomcat的Deployment把Application context後面的虛擬路徑名刪除(推薦)

方法二細節:

  1.Run->Edit Configuration

  2.點選Deployment

    IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題

  3.找到Application context刪除虛擬路徑名

    IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題

重啟伺服器執行專案,至此問題解決

到此這篇關於IDEA中HTML通過servlet3.0註解名提交表單到servlet類找不到頁面的問題的文章就介紹到這了,更多相關idea servlet3.0註解名提交表單找不到頁面內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!