Java技術專區--Hilly

          http://blog.duyouyou.com
             :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理

          LookupDispatchAction使用示例

          Posted on 2006-07-20 18:01 duyouyou.com 閱讀(930) 評論(0)  編輯  收藏 所屬分類: web技術
          LookupDispatchAction

          public abstract class LookupDispatchAction
          extends DispatchAction

          An abstract Action that dispatches to the subclass mapped execute method. This is useful in cases where an HTML form has multiple submit buttons with the same name. The button name is specified by the parameter property of the corresponding ActionMapping. To configure the use of this action in your struts-config.xml file, create an entry like this:

             <action path="/test"
                     type="org.example.MyAction"
                     name="MyForm"
                    scope="request"
                    input="/test.jsp"
                parameter="method"/>
           

          which will use the value of the request parameter named "method" to locate the corresponding key in ApplicationResources. For example, you might have the following ApplicationResources.properties:

              button.add=Add Record
              button.delete=Delete Record
            

          And your JSP would have the following format for submit buttons:

             <html:form action="/test">
              <html:submit property="method">
                <bean:message key="button.add"/>
              </html:submit>
              <html:submit property="method">
                <bean:message key="button.delete"/>
              </html:submit>
            </html:form>
            

          Your subclass must implement both getKeyMethodMap and the methods defined in the map. An example of such implementations are:

            protected Map getKeyMethodMap() {
                Map map = new HashMap();
                map.put("button.add", "add");
                map.put("button.delete", "delete");
                return map;
            }
          
            public ActionForward add(ActionMapping mapping,
                    ActionForm form,
                    HttpServletRequest request,
                    HttpServletResponse response)
                    throws IOException, ServletException {
                // do add
                return mapping.findForward("success");
            }
          
            public ActionForward delete(ActionMapping mapping,
                    ActionForm form,
                    HttpServletRequest request,
                    HttpServletResponse response)
                    throws IOException, ServletException {
                // do delete
                return mapping.findForward("success");
            }
            

          Notes - If duplicate values exist for the keys returned by getKeys, only the first one found will be returned. If no corresponding key is found then an exception will be thrown. You can override the method unspecified to provide a custom handler. If the submit was cancelled (a html:cancel button was pressed), the custom handler cancelled will be used instead.

          ?

          Hold住
          主站蜘蛛池模板: 青浦区| 安泽县| 东莞市| 舟曲县| 武山县| 平武县| 平乡县| 闽侯县| 玛沁县| 平果县| 军事| 盘锦市| 东阳市| 固始县| 始兴县| 松潘县| 隆昌县| 得荣县| 勐海县| 疏勒县| 三穗县| 米脂县| 宜章县| 古田县| 镇雄县| 东山县| 晋城| 柳州市| 新田县| 库尔勒市| 喜德县| 鄂托克旗| 镇沅| 鹰潭市| 时尚| 磐安县| 萍乡市| 梁平县| 呈贡县| 五寨县| 农安县|