已经实现部分:(下面的内容可以实现从1内容所在的jsp页面跳转到/admin/reset.jsp页面)
1、jsp文件中相关语句如下:
   document.form.action = "reset.do?do=getResetIn";
2、struts-config.xml文件中片段如下:
    <action name="reset"
      parameter="getResetIn"
      path="/reset"
      scope="request"
      type="com.nbw.ResetAction">
        <forward
            name="reset"
            path="/admin/reset.jsp"
            contextRelative="true" />
    </action>问题:
1、我想知道这个跳转的工作过程(即执行过程中1和2中参数按照执行顺序的作用关系);
2、如果还有一个"reset.do?do=login",那么应该怎么改struts-config.xml文件中的action部分(假设ResetAction类中已
经有了对应的login方法)

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【hongguang5885】截止到2008-06-27 10:11:30的历史汇总数据(不包括此帖):
    发帖数:3                  发帖分:60                 
    结贴数:2                  结贴分:40                 
    未结数:1                  未结分:20                 
    结贴率:66.67 %            结分率:66.67 %            
    楼主加油
      

  2.   

    reset.do?getResetIn=login这样才能找到LOGIN方法而且要用DISPATCHACTION.工作原理我也说不清楚.
      

  3.   

    1、原理不是很清楚,流程知道一点
    提交给reset.do后,先通过getResetIn的值判断将要执行的方法
    比如 getResetIn=doHello 就是执行名称为 doHello 的方法
    2、和2楼说的一样。但是用DISPATCHACTION前,要先删除默认方法 execute如果一定要用 reset.do?do=login
    就把 parameter="getResetIn" 改成 parameter="do"lz的 document.form.action = "reset.do?do=getResetIn";
    应该是执行的 execute 
      

  4.   

    下面action 中的path 参数是什么意思??
    <action name="loginBack"
          parameter="do"
          path="/in/loginBack"
          scope="request"
          type="com.nbw.wqcms.action.LoginAction">
          <forward
            name="top"
            path="/back/top.jsp"
            contextRelative="true" />
        </action>
      

  5.   

    path 就是指Http请求所应该对应的Action,也就是说
    决定了这次请求调用哪个ActionClass,1.工作过程大概是这样的
    Struts根据你JSP页面中的reset.do找到了所要调用的
    Action,也就是你struts-config.xml文件中定义的下面的Action
        <action name="reset" 
          parameter="getResetIn" 
          path="/reset" 
          scope="request" 
          type="com.nbw.ResetAction"> 
            <forward 
                name="reset" 
                path="/admin/reset.jsp" 
                contextRelative="true" /> 
        </action> 2.我想不用修改struts-config.xml吧,而是应该修改
    com.nbw.ResetAction吧,再com.nbw.ResetAction里面
    判断参数"do",如果是do=login的话,在com.nbw.ResetAction里面
    在做一次跳转
      

  6.   

    1.web.xml(ActionServlet的servlet的装载);2.Struts-config描述的action;       2.1ActionForm中的reset()方法;        2.2提交;3.提交给ActionServlet——*.do;4.找相对的Action;5.ActionForm装载;          5.1ActionForm 中的setXXX()的方法;        5.2ActionForm中的validate()方法;6 .调用Action中的ActionForward execute()方法;7.(核心)业务操作;8.forward()的转向;