请问struts1.1中action是如何调用配置文件的

来源:百度知道 编辑:UC知道 时间:2024/05/05 11:54:36
比如我在EnergyNav.Action中写了如下代码
public class EnergyNavAction extends BaseDispatchAction
{
。。。。省略
return mapping.findForward("list");
}

程序运行到mapping.findForward就会自动到struts-config-ems-energynav.xml这个文件去找配置,并根据
<action path="/energynav" parameter="action" name="energyNavForm" scope="request" type="com.longshine.amocis.ems.energynav.web.action.EnergyNavAction">
<forward name="list" path="/WEB-JSP/ems/energynav/energyNavPage.jsp" contextRelative="true"/>

跳转到energyNavPage.jsp这个页面,我想请问这是根据什么去自动找到struts-config-ems-energynav.xml这个文件的,而为什么找到这个文件根据那些代码就可以自动转向另一个页面?

web.xml文件中配置了servlet,里面配置了所有的请求都被action接管,而这个action就是struts,并且配置了一些struts相关的参数,比如struts的配置文件,这里是struts-config.xml,你的里面是struts-config-ems-energynav.xml,在初始化时容器就会读入这些参数,所以你可以直接用而不用管,struts的配置文件里面是一样的,也由容器负责初始化过程,所以你在里面配置了就可以直接用了。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>action</servlet-na