美文网首页
Action名称的搜索顺序以及配置中的各项默认值

Action名称的搜索顺序以及配置中的各项默认值

作者: exmexm | 来源:发表于2017-06-28 00:21 被阅读0次
一、Action名称的搜索顺序

1、获得请求的URI,例如ul是:http://server/struts2/path1/path2/path3/test.action

2、首先寻找namespace为/path1/path2/path3的package,如果不存在这个package则执行步骤3;如果存在这个package,则在这个package中寻找名字为test的action,当在该package下寻找不到action时就会跑到默认namespace的package里面寻找action(默认的命名空间为空字符串),如果在默认namespace的package里面还寻找不到该action,页面提示找不到action

3、寻找namespace为/path1/path2的package,如果不存在这个package,则转到步骤4;如果存在这个package,则在这个package中寻找为test的action,当在该package下寻找不到action时就会跑到默认namespace的package里面寻找action(默认的命名空间为空字符串),如果在默认namespace的package里面还寻找不到该action,页面提示找不到action。

4、寻找namespace为/path1的package,如果不存在这个package则执行步骤5,如果存在这个package,则在这个package中寻找为test的action,当在该package下寻找不到action时就会跑到默认namespace的package里面寻找action(默认的命名空间为空字符串),如果在默认namespace的package里面还寻找不到该action,页面提示找不到action。

5、寻找namespace为/的package,如果存在这个package,则在这个package中寻找名字为test的action,当在package中寻找不到action或者不存在该package时,都会去默认的namespace的package里面寻找action,如果还找不到,页面提示找不到action。

二、Action配置中的各项默认值

<package name="itcast" namespace="/test" extends="struts-default">
        <action name="helloworld" class="cn.itcast.action.HelloWorldAction" method="execute">
            <result name="success">/WEB-INF/page/hello.jsp</result>
        </action>
    </package>

1、如果配置中没有为action指定class,默认是ActionSupport
2、如果没有为Action指定method,默认执行Action中的execute方法
3、如果没有指定result的name属性,默认值为success

相关文章

网友评论

      本文标题:Action名称的搜索顺序以及配置中的各项默认值

      本文链接:https://www.haomeiwen.com/subject/cteycxtx.html