action名称的搜索顺序:
1、获得请求路径的URI,例如URL是:http://server/struts2/path1/path2/path3/test.action
2、首先寻找namespace为/path1/path2/path3的namespace,如果不存在这个package则执行步骤3;如果存在这个package,则在这个package中寻找名字为test的action(默认的命名空间为空字符串“”),如果在默认namespace的package里面还寻找不到该action,页面提示找不到action
3、寻找namespace为/path1/path2的package,如果不存在这个package,则转至步骤4;如果存在这个package,则在这个package中寻找名字为test的action,当在该package中寻找不到action时就会直接跑到默认的namespace的package里面去找名字为test的action,当在该package中寻找不到action时就会直接跑到默认的namespace的package里面去寻找名字为test的action,在默认的namespace的package中还寻找不到该action,页面提示找不到action。
4、现在namespace为/path1的package,如果不存在这个package则执行步骤5;如果存在这个package,则在这个package中寻找名字为test的action,当在该package中寻找不到action时就会直接跑到默认namespace的package里面去寻找名字为test的action,在默认的namespace的package里面还寻找不到该action,页面提示找不到action。
5、现在namespace为/的package,如果存在这个package,则在这个package中寻找名字为test的action,当在package中寻找不到action或不存在这个package时,都会默认namespace的package里面寻找action,如果还是找不到,页面提示找不到action。