<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Shao Fan

    關(guān)于JAVA與軟件工程
    posts - 31, comments - 71, trackbacks - 0, articles - 4
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    Cannot find action mapping??

    Posted on 2006-03-01 10:44 shaofan 閱讀(2054) 評(píng)論(5)  編輯  收藏 所屬分類: Java

            今天試著把大蝦寫的系統(tǒng)登錄模塊加到我們現(xiàn)有的模塊里來,他寫的時(shí)候因?yàn)橛行┰囼?yàn)的成分,所以沒有按照我們項(xiàng)目的配置來寫,也沒有按照我們的模塊來劃分配置,加過來以后重新配置了模塊信息,結(jié)果居然無法正常運(yùn)行。顯示錯(cuò)誤:“cannot retrieve action mapping  。廢了九牛二虎之力,都無法解決。web.xml、struts-config、模塊配置,一切看起來都無比的正常,但就是運(yùn)行不了。真搞不清楚是哪里出了問題。還以為搞不定,晚上要加班了,誰知道,踏破鐵鞋無覓處,柳暗花明又一村,在google上搜索關(guān)鍵字"action mapping 找不到",第一個(gè)鏈接居然就是問題的答案?。ㄟ€從來沒有只點(diǎn)一次就可以找到問題答案的經(jīng)驗(yàn),所以興奮無比^O^)

            總的來說,問題的原因就在于,struts是在第一次收到對(duì)action的請(qǐng)求(注意:不包括jsp的請(qǐng)求)時(shí),提取這個(gè)請(qǐng)求的url的路徑信息,把相應(yīng)模塊的mapping信息設(shè)置到請(qǐng)求中去。如果在進(jìn)入一個(gè)模塊時(shí),第一次訪問的是一個(gè)jsp頁面,而在這個(gè)jsp頁面中提交到該模塊的一個(gè)action,就會(huì)出現(xiàn)找不到action mapping的情況。這就是因?yàn)椋谶M(jìn)到這個(gè)模塊時(shí),訪問的是jsp,這個(gè)模塊的任何一個(gè)action都沒有被訪問到,所以struts的ActionServlet還沒有來得及把這個(gè)模塊的mapping設(shè)置到請(qǐng)求中,自然找不到該模塊的action。

            因此,這就引出一個(gè)約定,就是系統(tǒng)中盡量避免對(duì)Jsp的直接訪問,如果要訪問也要通過action來forward。雖然看起來麻煩一點(diǎn),但是安全性、健壯性都會(huì)有所提高。

            關(guān)于以上提到的模塊mapping的設(shè)置原理,具體的文章在這里(不長),值得收藏:

            原文鏈接:http://202.100.72.44/news/itschool/pro/pro44134.htm


    評(píng)論

    # re: Cannot find action mapping??  回復(fù)  更多評(píng)論   

    2006-05-24 08:47 by swads
    具體怎么解決啊?

    # re: Cannot find action mapping??  回復(fù)  更多評(píng)論   

    2006-05-24 17:50 by shaofan
    @swads
    解決方法就是,第一次訪問一個(gè)模塊時(shí),要通過.do而不是JSP來訪問,以使它的模塊配置被加載進(jìn)來。

    # re: Cannot find action mapping??  回復(fù)  更多評(píng)論   

    2006-07-23 09:30 by Hanson Hsu
    但是我通過.do去訪問還是存在這個(gè)問題。可能是structs的BUG吧

    # re: Cannot find action mapping??  回復(fù)  更多評(píng)論   

    2006-12-26 10:38 by OK
    測過,用.do 訪問可行,謝謝樓主

    # re: Cannot find action mapping??  回復(fù)  更多評(píng)論   

    2008-05-15 11:36 by Mikey
    在你處理的Action文件中加入一個(gè)方法
    public ActionForward index(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws ServletException {
    return mapping.findForward("welcome");
    }
    然后在sturts-config.xml或多模塊配置文件中的action設(shè)置中加入一個(gè)forward屬性到你的第一個(gè)頁面
    主站蜘蛛池模板: 一二三四在线观看免费中文在线观看| 精品亚洲成a人片在线观看少妇| 亚洲午夜成人精品无码色欲| 84pao国产成视频免费播放| 亚洲日韩欧洲乱码AV夜夜摸| 国产日韩精品无码区免费专区国产| 亚洲AV无码一区二区三区国产| 色欲aⅴ亚洲情无码AV蜜桃| 国产成人无码免费视频97| 亚洲AV永久无码精品网站在线观看 | 67194成是人免费无码| 色噜噜亚洲男人的天堂| 成人无码区免费视频观看| 亚洲aⅴ无码专区在线观看 | 中文字幕在亚洲第一在线| 成全视成人免费观看在线看| 亚洲国产成人一区二区精品区| 中文无码成人免费视频在线观看| 久久精品a亚洲国产v高清不卡 | 国产亚洲综合久久| 国产精品亚洲w码日韩中文| a级毛片在线免费| 亚洲一区影音先锋色资源| 日韩免费a级毛片无码a∨| 亚洲av日韩av永久在线观看| 亚洲男人第一无码aⅴ网站| 免费无码作爱视频| 亚洲不卡中文字幕| 国产免费资源高清小视频在线观看| 免费一级毛片在线播放视频免费观看永久| 久久久久亚洲?V成人无码| 99爱在线观看免费完整版| 亚洲色大成网站www尤物| 亚洲爽爽一区二区三区| 99国产精品视频免费观看| 亚洲欧洲无码AV不卡在线| 亚洲中文字幕在线乱码| 国产精品成人观看视频免费| 男人和女人高潮免费网站| 亚洲综合久久成人69| 亚洲?v女人的天堂在线观看|