新建一個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 閱讀(563)
評論(2) 編輯 收藏 所屬分類:
Struts2