使用DispatchAction类可以写很多的方法,可是怎么使对应的方法与相应的form连接.使用Action时,一个form和他映射,使用DispatchAction时应该有很多个form和他映射,要怎么映射?

解决方案 »

  1.   

    需要actionForm时候实例化这个form即可了
    action里面不是这样实现的么?
      

  2.   

    DispatchAction是分派的Action,里面可以不实现Execute方法,可以自定义方法名称
    最简单的办法,把form表单提交按钮传入一个值给隐藏域,值的名称就是自定义方法的名称。
    隐藏域的name和struts-config.xml中action中配置的parameter的名字相同。
    这样就可以了
      

  3.   


       <action attribute="Form1"
          name="Form1"
          input="a.jsp"
          parameter="status"
          path="/doform1"
          scope="request"
          type="com.xxAction">
          </action>
      <action attribute="Form2"
          name="Form2"
          input="b.jsp"
          parameter="status"
          path="/doform2"
          scope="request"
          type="com.xxAction">
          </action>
      <action attribute="Form3"
          name="Form3"
          input="c.jsp"
          parameter="status"
          path="/doform3"
          scope="request"
          type="com.xxAction">
          </action>
    ...............
      

  4.   

    那些方法对应的应该是同一个FORM,使用的时候只需实例化一个form对象就行了
      

  5.   

    就是这样的~楼主其实还可以直接用你之前的form,在该action中只要你用到的form中的字段全部有就可以了~取字段的值也可以通过页面取得啊
      

  6.   

    我之前按用 dispatchAction的时候 都用LazyValidatorBean  
    就是每次请求的时候 根据请求参数动态的产生一个bean 属性是你请求页面的所有parameter组成 
      

  7.   

    DispatchAction是分派的Action,里面可以不实现Execute方法,可以自定义方法名称 
    最简单的办法,把form表单提交按钮传入一个值给隐藏域,值的名称就是自定义方法的名称。 
    隐藏域的name和struts-config.xml中action中配置的parameter的名字相同。 Java code 
      <action attribute="Form1" 
          name="Form1" 
          input="a.jsp" 
          parameter="status" 
          path="/doform1" 
          scope="request" 
          type="com.xxAction"> 
          </action> 
      <action attribute="Form2" 
          name="Form2" 
          input="b.jsp" 
          parameter="status" 
          path="/doform2" 
          scope="request" 
          type="com.xxAction"> 
          </action> 
      <action at… 两个结合的看就很明白了
      

  8.   


    (1)一个Action对应多个ActionForm,表现在配置文件中就是name属性可以配的不同,type配一个DispatchAction.
    (2)或者把所有Form用到的属性封装到一个ActionForm中仅供参考
      

  9.   

    parameter="action"======struts-config.xml
    action extends DispatchAction
      

  10.   

    配置的方法其实和Action一样,只是多了一个parameter属性,parameter属性就是指明一个变量,在页面表单提交的时候,指定那一个方法被调用。
      

  11.   

    <action attribute="LoginForm" input="/index.jsp" name="LoginForm"
    path="/user" scope="request" parameter="operate"
    type="com.yjj.xmal3.action.UserAction">
    <forward name="agree" path="/user_info.jsp" />
    <forward name="loginSuccess" path="/user_info.jsp" />
    <forward name="loginFail" path="/index.jsp" />
    <forward name="doadd" path="/index.jsp" />
    </action>像这种情况,action配置中attribute="LoginForm" attribute中能填写一个actionform,而很多actionform都要提交给这个action怎么办??<from name="f1" acton="/user.do?operate=agree">
    <from name="f2" action="/user.do?operate=dologin">......
    这个怎样实现?