One problem we have with existing classes is the protected static log
variables. If used by a subclass, you get a confusing log message that
points to the parent class. Can you change this to private?
David
--- [EMAIL PROTECTED] wrote:
> sraeburn 2003/08/11 20:26:53
>
> Modified: src/share/org/apache/struts/actions
> LocalStrings.properties
> Added: src/share/org/apache/struts/actions
> MappingDispatchAction.java
> Log:
> Addition of MappingDispatchAction that dispatches to a method named by
> the ActionMapping parameter
>
> PR: 17117 Suggested by Anthony Kay
>
> Revision Changes Path
> 1.7 +2 -0
>
jakarta-struts/src/share/org/apache/struts/actions/LocalStrings.properties
>
> Index: LocalStrings.properties
> ===================================================================
> RCS file:
>
/home/cvs/jakarta-struts/src/share/org/apache/struts/actions/LocalStrings.properties,v
> retrieving revision 1.6
> retrieving revision 1.7
> diff -u -r1.6 -r1.7
> --- LocalStrings.properties 3 Jul 2003 03:14:14 -0000 1.6
> +++ LocalStrings.properties 12 Aug 2003 03:26:53 -0000 1.7
> @@ -10,3 +10,5 @@
> include.rd=Cannot create request dispatcher for path {0}
> switch.prefix=Invalid module prefix {0} was specified
> switch.required=Switch requires both 'prefix' and 'page' request
> parameters
> +success.required=SuccessAction could not find an ActionForward named
> 'success' for path '{0}'
> +mapping.parameter=ActionMapping[{0}] does not define a 'parameter'
> attribute
> \ No newline at end of file
>
>
>
> 1.1
>
jakarta-struts/src/share/org/apache/struts/actions/MappingDispatchAction.java
>
> Index: MappingDispatchAction.java
> ===================================================================
> /*
> * $Header$
> * $Revision$
> * $Date$
> *
> *
> ====================================================================
> *
> * The Apache Software License, Version 1.1
> *
> * Copyright (c) 1999-2003 The Apache Software Foundation. All rights
> * reserved.
> *
> * Redistribution and use in source and binary forms, with or without
> * modification, are permitted provided that the following conditions
> * are met:
> *
> * 1. Redistributions of source code must retain the above copyright
> * notice, this list of conditions and the following disclaimer.
> *
> * 2. Redistributions in binary form must reproduce the above
> copyright
> * notice, this list of conditions and the following disclaimer in
> * the documentation and/or other materials provided with the
> * distribution.
> *
> * 3. The end-user documentation included with the redistribution, if
> * any, must include the following acknowlegement:
> * "This product includes software developed by the
> * Apache Software Foundation (http://www.apache.org/)."
> * Alternately, this acknowlegement may appear in the software
> itself,
> * if and wherever such third-party acknowlegements normally
> appear.
> *
> * 4. The names "The Jakarta Project", "Struts", and "Apache Software
> * Foundation" must not be used to endorse or promote products
> derived
> * from this software without prior written permission. For written
> * permission, please contact [EMAIL PROTECTED]
> *
> * 5. Products derived from this software may not be called "Apache"
> * nor may "Apache" appear in their names without prior written
> * permission of the Apache Group.
> *
> * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
> * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
> * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
> * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
> * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
> * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
> * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
> * SUCH DAMAGE.
> *
> ====================================================================
> *
> * This software consists of voluntary contributions made by many
> * individuals on behalf of the Apache Software Foundation. For more
> * information on the Apache Software Foundation, please see
> * <http://www.apache.org/>.
> *
> */
>
> package org.apache.struts.actions;
>
> import javax.servlet.ServletException;
> import javax.servlet.http.HttpServletRequest;
> import javax.servlet.http.HttpServletResponse;
>
> import org.apache.commons.logging.Log;
> import org.apache.commons.logging.LogFactory;
> import org.apache.struts.action.ActionForm;
> import org.apache.struts.action.ActionForward;
> import org.apache.struts.action.ActionMapping;
>
> /**
> * <p>An abstract <strong>Action</strong> that dispatches to a public
> * method that is named by the <code>parameter</code> attribute of
> * the corresponding ActionMapping. This is useful for developers who
> prefer
> * to combine many related actions into a single Action class.</p>
> *
> * <p>To configure the use of this action in your
> * <code>struts-config.xml</code> file, create an entry like this:</p>
> *
> * <pre><code>
> * <action path="/saveSubscription"
> * type="org.example.SubscriptionAction"
> * name="subscriptionForm"
> * scope="request"
> * input="/subscription.jsp"
> * parameter="method"/>
> * </code></pre>
> *
> * <p>where 'method' is the name of a method in your subclass of
> * MappingDispatchAction that has the same signature (other than
> method
> * name) of the standard Action.execute method. For example, you
> might combine
> * the methods for managing a subscription into a single
> * MappingDispatchAction class using the following methods:</p>
> * <ul>
> * <li>public ActionForward create(ActionMapping mapping, ActionForm
> form,
> * HttpServletRequest request, HttpServletResponse response)
> * throws Exception</li>
> * <li>public ActionForward edit(ActionMapping mapping, ActionForm
> form,
> * HttpServletRequest request, HttpServletResponse response)
> * throws Exception</li>
> * <li>public ActionForward save(ActionMapping mapping, ActionForm
> form,
> * HttpServletRequest request, HttpServletResponse response)
> * throws Exception</li>
> * <li>public ActionForward delete(ActionMapping mapping, ActionForm
> form,
> * HttpServletRequest request, HttpServletResponse response)
> * throws Exception</li>
> * <li>public ActionForward list(ActionMapping mapping, ActionForm
> form,
> * HttpServletRequest request, HttpServletResponse response)
> * throws Exception</li>
> * </ul>
> * <p>for which you would create corresponding <action>
> configurations
> * that reference this class:</p>
> *
> * <pre><code>
> * <action path="/createSubscription"
> * type="org.example.SubscriptionAction"
> * parameter="create">
> * <forward name="success" path="/editSubscription.jsp"/>
> * </action>
> *
> * <action path="/editSubscription"
> * type="org.example.Subscription"
> * parameter="edit">
> * <forward name="success" path="/editSubscription.jsp"/>
> * </action>
> *
> * <action path="/saveSubscription"
> * type="org.example.SubscriptionAction"
> * parameter="save"
> * name="subscriptionForm"
> * validate="true"
> * input="/editSubscription.jsp"
> * scope="request">
> * <forward name="success" path="/savedSubscription.jsp"/>
> * </action>
> *
> * <action path="/deleteSubscription"
> * type="org.example.SubscriptionAction"
> * name="subscriptionForm"
> * scope="request"
>
=== message truncated ===
__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]