struts2请求的URL的搜索路径的顺序概述

jopen 8年前

1.获得请求路径的URI,例如url是:http://localhost:8080/struts2-01/path1/path2/path3/student.action

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

3.寻找namespace为/path1/path2的package,如果不存在这个package,则执行步骤4;如果存在执行步骤2中的绿色字体。

4.寻找namespace为/path1的package,如果不存在这个package,则执行步骤5;如果存在执行步骤2中的绿色字体。

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

来自:http://blog.csdn.net/dong_martin/article/details/20000195