【原创】在Struts2的welcome-file里配置action
老早的时候我就问过这个问题,研究了一段时间给的结论是“Struts2的welcom-file中不支持action写法!”。早些时候说了这样的看法倒没什么,说不定还能忽悠一些人。
今天再次研究这个问题的时候,在网上好些朋友还是保持这种看法,不过,也有的朋友说是支持的。其实,不管是支持,还是不支持,相信都是就当前自己所用的环境而言的。所以当我今天再次研究的时候发现,说支持和不支持的,其实都是对错各半。
以下为我今日的分析环境:
Struts版本:2.0.14、2.1.8.1
Eclipse版本:3.5、3.7
Tomcat版本:5.5.34、6.0.35、7.0.22
过程就不具体讲了,总之是把以上的各种组合都做了,分析的结果如下:
1、welcom-file里支持不支持action写法,与Struts2的版本无关
换句话说,Struts2都是可以支持的,注意是可以。
2、与Eclipse版本(3.5、3.7)也没啥关系。
3.5以下的版本没有测试,只能说与测试过的3.5和3.7没关系
3、与Tomcat的版本有关
这里才是重点。
说白了,Tomcat是个服务器,如果服务器不支持web.xml中的action解析,Struts2再啥样也没用。
结论:
Tomcat7.0以上(包括7.0)版本支持welcom-file中的action写法。
Tomcat7.0以下版本不支持。
不过美中不足的是,如果想让welcom-file中的action能直接访问,必须要在与其相同的位置新建一XXXX.action的空文件。在Tomcat7.0以下版本中,即使新建了这样的文件,也不无法解析的。
但愿Tomcat以后的版本中能改善这个问题。