日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Cannot retrieve mapping for action

發布時間:2023/12/2 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Cannot retrieve mapping for action 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
想必用過Struts的朋友都遇到過這個異常吧!沒遇到的也可能,只能說你很強或運氣不錯。

我遇到該異常的解釋是我不強,用Struts不是很多,或者說根本不熟練,對一些知識了解得并不深,僅僅皮毛而已,所以這個異常困擾了我一天的時間。言歸正傳。

從字面上翻譯就是“不能找到映射action”,當出現這個異常的時候,肯定是在請求某個action,而根據給定的路徑卻沒找到,所以頁面啪嚓拋出一個異常,滿滿一頁。

此時你首先要檢查的是請求的路徑是否書寫正確,與struts-config.xml中配置的路徑仔細的核對,發現完全正確。真的完全吻合么?恐怕只有后面的“/XXAction”完全相同吧!所謂的完全正確是指由根目錄到struts配置的path完全一致,如“http://localhost:8080/web/data/login.do”, 你的struts配置文件中配置的可能是path="/data/login",那么你如此訪問肯定是正確的,只怕你忘記了data這個渺小的目錄的存 在,遺忘請補齊。這種情況的出現往往是做項目的時候,小組都分區分模塊,每個人都有自己定義的目錄,在web.xml中配置struts,如:

<servlet>
<servlet-name>strutsAction</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>

<init-param>
<param-name>config/prms/data</param-name>
<param-value>/WEB-INF/prms/struts-config-data.xml</param-value>
</init-param>
</servlet>
那么在你訪問struts資源的時候千萬不要忘記上面配置的路徑。

下面說說我遇到這個異常的原因吧!我直接訪問服務器上的資源,即xx.jsp,如果路徑寫正確,這是沒問題的,但是頁面上卻拋出了這個異常,仔細的 檢查發現,頁面form的action寫著“/login.do”,頁面所在路徑與“/login.do”組合后的路徑并不是action配置的路徑,所 以根本就找不到action資源,只能拋出異常。

前輩們都建議不要直接訪問服務器固定資源,如果你偏要訪問那個jsp也行,使用Struts提供的ForwardAction即可,既不會出現上面的異常,又沒有直接訪問服務器資源,兩全其美。

轉載于:https://www.cnblogs.com/icewee/articles/2017685.html

總結

以上是生活随笔為你收集整理的Cannot retrieve mapping for action的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。