首先介绍下struts1种xml配置的相关概念:
• Action 的path:
ActionServlet 根据该属性来转发用户的请求,即将用户请求转发与之同名的Action 。同名的意思是:将请求的.do 后缀去掉,匹配Action 的path属性值。
• Action 的name:
此处的name 属性并不是Action 本身的名字,而是与Action 关联的ActionForm。因此该name 属性必须是前面存在的ActionForm 名。
• Action 的type:
该属性用于指定Action 的实现类,也就是负责处理用户请求的业
务控制器。
• 局部Forward:
Action 的转发并没有转发到实际的JSP 资源,而是转发到逻辑名,即Forward 名。在Action 内配置的Forward 都是局部Forward (该Forward 只在该Action 内有效)。
下面通过一个示例介绍下如何通过.do请求寻找Action处理类以及对应的jsp资源:
1.在jsp页面右键点击属性按钮,选择URL中的地址中选中点do请求后复制。并记住operate。例如:
2.然后在项目里通过ctrl + H 搜索扩展名为xml的文件进行寻找相应的Action处理类。与operate可共同确定该页面的Action处理类为type的值“com.hundsun.fund.actions.fundinfo.StructProjectRatioAction”。
3.在Action处理类中根据operate 可以确定该请求的forward为 return “structRatioSchemaList” 中的 “structRatioSchemaList”:
4.然后在xml文件中搜索name="structRatioSchemaList"的forwar节点,最终定位到path路径为“struRatScheManage.jsp"
的目标页面