关于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.zhangruifeng.com 直接能访问 www.zhangruifeng.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.zhangruifeng.com 直接能访问 www.zhangruifeng.com/indexAction了.
  转载请注明出处:张瑞锋的新浪博客 http://blog.sina.com.cn/ruipheng
  
收藏  | 打印  | 字体:  -缩小  放大+    
[ x ] 请正确填写下面信息


是否保存此网页快照 是否公开此收藏

查看全部评论(0)我来说两句