比如當我進入首頁時,就要將數據庫中的一些數據加載到welcome.jsp頁面中,但是剛進入頁面時,是沒有執行action的,所以無法通過action獲得數據庫中的數據。此時有一個辦法:就是建立一個臨時的頁面,比如temp.jsp,在該jsp頁面中的head中只有一句:
<meta http-equiv=’refresh’ content=’0;url=yourAction.action’>
,然后在web.xml文件中設置<welcome-file-list>,把temp.jsp設置成初始訪問的頁面(原先是welcome.jsp)。如下:
<welcome-file-list>
<welcome-file>temp.jsp</welcome-file>
</welcome-file-list>
當然,在struts.xml中配置yourAction時,要把跳轉頁面設置成welcome.jsp。最后,重啟服務器,在瀏覽器中輸入服務器地址加項目名,便會直接執行yourAction跳轉到你想要的首頁welcome.jsp。
如果進入首頁時,你想要加載多個action,也有辦法。可以在你加載的第一個action中配置另一個action。如下:
<result name="success" type="chain">
<param name="actionName">anotherAction </param>
<param name=”method”>xxxx</param>
<param name=”namespace”>/xxx/…</param>
</result>
當然,你也可以按照前面的方法再配置一個臨時的跳轉頁面,從而加載另一個action,不過這樣稍顯累贅。