此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【Young_suse】截止到2008-07-23 15:34:12的历史汇总数据(不包括此帖):
发帖的总数量:4                        发帖的总分数:40                       每贴平均分数:10                       
回帖的总数量:19                       得分贴总数量:2                        回帖的得分率:10%                      
结贴的总数量:4                        结贴的总分数:40                       
无满意结贴数:0                        无满意结贴分:0                        
未结的帖子数:0                        未结的总分数:0                        
结贴的百分比:100.00%               结分的百分比:100.00%                  
无满意结贴率:0.00  %               无满意结分率:0.00  %                  
敬礼!

解决方案 »

  1.   

    为添加和修改分别配置<action>
    因为扩展了DispatchAction可以通过parameter指定请求到达的方法
      

  2.   

    我只有一个Action类,应该不能配置多个<action>吧,而且我也指定了<action parameter="method">的啊,这样在JSP页面的form中,我通过一个隐藏域设定
    <input name="method" type="hidden" id="method" value="addUser">表示提交表单后调用我扩展DispatchAction类后自定义的addUser方法。
    当然修改操作时隐藏域为<input name="method" type="hidden" id="method" value="updateUser">
      

  3.   

    我只有一个Action类,应该不能配置多个 <action>吧可以配置多个 path  不同就可以
      

  4.   

    在这个样子的  比如你有一个DispatchAction  里面有两个方法a,b分别做不同的功能,那现在你就可以在xml里这样
    <action 
    input="a" name="aForm"
    parameter="method" path="/aaaaaa" scope="request"
    type="......action">
    <forward name="success"
    path="...jsp" />
           </action>       <action 
    input="b" name="bForm"
    parameter="method" path="/bbbbbb" scope="request"
    type="......action">
    <forward name="success"
    path="...jsp" />
           </action>你想用a方法就可以这样 /aaaaaa.?method=a
    你想用b方法就可以这样 /bbbbbb.?method=b上面两个type="......action是同样的 都是你那个DispatchAction
     懂了没  用是你用spring去实列化action 同样的道理  qq316184674
      

  5.   

    lz是这个吧意思:现有两个页面(用户注册页面、用户资料修改页面)指向同一Action(继承自DispatchAction)和ActionForm(验证信息基本相同),当ActionForm验证失败时,分别需要返回到注册页面和修改页面,但struts-config.xml中的input只能设置一个值,这时怎么办?
     
    解决方法“
    虽然你的XXXDispatchAction的class实例只有一个但是在struts-config.xml的ActionMappings里面可以映射为多个 <action> 标记,例如: 
    假如UserDispatchAction是你写的DispatchAction<action 
          path= "/addUser" 
          input= "/addUser.jsp"       parameter= "method" 
          name= "UserForm" 
          attribute= "UserForm" 
          scope= "request" 
          validate= "true" 
         type= "....UserDispatchAction">      <forward....... /> </action>
    <action 
          path= "/UpdateUser" 
          input= "/UpdateUser.jsp"       parameter= "method" 
          name= "UserForm" 
          attribute= "UserForm" 
          scope= "request" 
          validate= "true" 
         type= "....UserDispatchAction">      <forward....... /> </action> 
     那么在JSP里面就可以这么分别描述表单标签。 
        <html:form action= "addUser.do "/> 
        <html:form action= "UpdateUser.do "/> 这样你不仅能为不同的行为指定不同的“action”, 自然就可以使用不同的input, 分别指定validate是true或者false, 甚至可以使用不同的ActionForm。
      

  6.   

    恩,懂了。就是就是配置多个<action>,让path不同,但type相同,对吧!这样就可以在多个<action>里配置不同的input。
    谢谢大家了!
      

  7.   

    这样不好  你不是在addUser.jsp 和update.jsp中都设置有个 影藏字段分别为<input type="hidden" name="act" value="add"/> <input type="hidden" name="act" value="update"/>,这样在写一个jsp页面叫forword.jsp 
            <logic:equal value="add"  name="act">
    <jsp:forward page="/addUser.jsp"></jsp:forward>
    </logic:equal>
    <logic:equal value="update"  name="act">
    <jsp:forward page/update.jsp"></jsp:forward>
    </logic:equal>
    struts配置文件里input属性就写/forword.jsp  
    而在你action所在的方法里 
    首先加入下面代码
    String act= request.getParameter("act");
    request.setAttribute("act", act);
    这样就可以实现不同的页面跳转错误页面显示对应的页面