IDEA中HTML通過servlet3.0注解名提交表單到servlet類找不到頁面的問題
這個(gè)問題困擾我整整一天一夜,先是代碼檢查路徑設(shè)置找不出問題,后面換tomcat版不行,抱著僥幸心理換IDEA版本意料之中還是沒解決問題。
都快想禿了最后終于完美解決了。
場(chǎng)景描述:
IDEA中新建web項(xiàng)目
tomcat正常
HTML通過XML配置文件提交表單正常
當(dāng)HTML通過Servlet注解名提交表單時(shí)404
問題分析:
通常404是路徑出現(xiàn)問題,此時(shí)第一反應(yīng)是form中action值和servlet注解值出錯(cuò),檢查后
屬性值匹配。檢查游覽器訪問路徑最終找到問題出在啟動(dòng)虛擬路徑上。
如圖訪問login.html時(shí)是通過 /test 這個(gè)虛擬路徑訪問的。但是提交表單后游覽器中虛擬路徑
消失而是直接通過servlet注解名提交表單數(shù)據(jù),見圖:
明白這里解決問題就簡(jiǎn)單了,想到的有兩種解決方法:
方法一:給servlet注解的映射加上虛擬路徑(沒啥意義)
方法二:配置Tomcat的Deployment把Application context后面的虛擬路徑名刪除(推薦)
方法二細(xì)節(jié):
1.Run->Edit Configuration
2.點(diǎn)擊Deployment
3.找到Application context刪除虛擬路徑名
重啟服務(wù)器運(yùn)行項(xiàng)目,至此問題解決
到此這篇關(guān)于IDEA中HTML通過servlet3.0注解名提交表單到servlet類找不到頁面的問題的文章就介紹到這了,更多相關(guān)idea servlet3.0注解名提交表單找不到頁面內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法2. Nginx+php配置文件及原理解析3. windows服務(wù)器使用IIS時(shí)thinkphp搜索中文無效問題4. .NET中l(wèi)ambda表達(dá)式合并問題及解決方法5. JSP數(shù)據(jù)交互實(shí)現(xiàn)過程解析6. 淺談python出錯(cuò)時(shí)traceback的解讀7. python matplotlib:plt.scatter() 大小和顏色參數(shù)詳解8. Ajax實(shí)現(xiàn)表格中信息不刷新頁面進(jìn)行更新數(shù)據(jù)9. Python importlib動(dòng)態(tài)導(dǎo)入模塊實(shí)現(xiàn)代碼10. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向
