關於struts2中default-action-ref的一些問題及首頁設置

相信在ssh2項目中首頁都是需要調用action轉向jsp頁面迭代上一層傳過來的List,Set等集合,這樣問題就來了,在web.xml中,welcome-file是不能配置action的, 如
 < welcome-file-list>
<welcome-file>index.jsp</welcome-file>
 < /welcome-file-list> 
不能寫成
 < welcome-file-list>
<welcome-file>indexAction</welcome-file>
 < /welcome-file-list> 
 這樣肯定報404錯誤
那麼首頁該怎樣調用action呢,如 www.wjrong.com 直接能訪問 www.wjrong.com/indexAction呢
很多web開發人員選擇了jsp:forword的方式,在index.jsp採用jsp:forward跳轉
<jsp:forward page="/indexAction" />
這樣確實解決了問題,但筆者以爲這種方式並不是很好下面介紹一種方式

就是在struts.xml中package標籤下配置default-action-ref,例如
<package name="default" namespace="/" extends="struts-default">
<default-action-ref name="indexAction"></default-action-ref>
<action name="indexAction" class="com.listAll">
<result name="success">index.jsp</result>
</action>
</package>
這樣似乎能行,測試一下,問題又來了,怎麼根本不起作用啊.我通過測試發現,還是調用了原來主頁的index.jsp,indexAction絲毫沒起作用
這個原因是系統默認web.xml中,如下面index.jsp是主頁
 < welcome-file-list>
<welcome-file>index.jsp</welcome-file>
 < /welcome-file-list> 
於是筆者在web.xml中刪除了上面那段代碼,發現還是不行.因爲系統會默認識別名字爲index.jsp作爲首頁.有人說可以把index.jsp文件改個名字就可以了,這樣確實可以,但我想到了另外一個比較好的辦法,就是改web.xml中上面那段代碼,改正這樣.
 < welcome-file-list>
<welcome-file>test.jsp</welcome-file>
 < /welcome-file-list> 
  這樣系統找不到test.jsp主頁,default-action-ref默認action將起到作用,這樣就可以用www.wjrong.com 直接能訪問 www.wjrong.com/indexAction了.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章