新建一个struts2项目,命名为struts2。按照如下XML文件配置一个Action:
1<package name="hello" namespace="/action" extends="struts-default">
2 <action name="helloworld" class="com.xiaobai.struts.action.HelloWorldAction" method="execute">
3 <result name="success">/WEB-INF/page/hello.jsp</result>
4 </action>
5</package>
将应用部署,访问如下路径:
http://localhost:8080/struts2/action/sdf/dsf/32/d/helloworld 依然可以访问到Action。
这主要是因为Struts2对Action名称的搜索是按照一定顺序进行的。以上面的情况为例:
1.struts2首先搜索命名空间为/action/sdf/dsf/32/d的包是否存在,存在的情况下,是否有helloworld这个Action;
2.搜索命名空间为/action/sdf/dsf/32的包是否存在,存在的情况下,是否有helloworld这个Action;
3.搜索命名空间为/action/sdf/dsf的包是否存在,存在的情况下,是否有helloworld这个Action;
4.搜索命名空间为/action/sdf的包是否存在,存在的情况下,是否有helloworld这个Action;
5.搜索命名空间为/action的包是否存在。在这种情况下能够搜索到,因此,可以访问到helloworld这个Action。
此外,如果按照这种搜索顺序搜索,发现所有的包均不存在,那么struts2则会到命名空间为""(默认命名空间)的包下面去找helloworld这个Action。
posted on 2010-08-27 21:02
wawlian 阅读(555)
评论(2) 编辑 收藏 所属分类:
Struts2