Author: jogep
Date: Tue Apr 26 18:28:38 2011
New Revision: 1096838

URL: http://svn.apache.org/viewvc?rev=1096838&view=rev
Log:
WW-3450: supressEmptyParameters option is misspelled

Modified:
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletActionRedirectResult.java
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletActionRedirectResult.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletActionRedirectResult.java?rev=1096838&r1=1096837&r2=1096838&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletActionRedirectResult.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletActionRedirectResult.java
 Tue Apr 26 18:28:38 2011
@@ -21,51 +21,60 @@
 
 package org.apache.struts2.dispatcher;
 
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.struts2.dispatcher.mapper.ActionMapper;
+import org.apache.struts2.dispatcher.mapper.ActionMapping;
+
 import com.opensymphony.xwork2.ActionInvocation;
 import com.opensymphony.xwork2.util.logging.Logger;
 import com.opensymphony.xwork2.util.logging.LoggerFactory;
 import com.opensymphony.xwork2.util.reflection.ReflectionExceptionHandler;
-import org.apache.struts2.dispatcher.mapper.ActionMapper;
-import org.apache.struts2.dispatcher.mapper.ActionMapping;
-
-import java.util.Arrays;
-import java.util.List;
 
 /**
  * <!-- START SNIPPET: description -->
- *
- * This result uses the {@link ActionMapper} provided by the {@link 
ActionMapperFactory} to redirect the browser to a
- * URL that invokes the specified action and (optional) namespace. This is 
better than the {@link ServletRedirectResult}
- * because it does not require you to encode the URL patterns processed by the 
{@link ActionMapper} in to your struts.xml
- * configuration files. This means you can change your URL patterns at any 
point and your application will still work.
- * It is strongly recommended that if you are redirecting to another action, 
you use this result rather than the
+ * 
+ * This result uses the {@link ActionMapper} provided by the
+ * {@link ActionMapperFactory} to redirect the browser to a URL that invokes 
the
+ * specified action and (optional) namespace. This is better than the
+ * {@link ServletRedirectResult} because it does not require you to encode the
+ * URL patterns processed by the {@link ActionMapper} in to your struts.xml
+ * configuration files. This means you can change your URL patterns at any 
point
+ * and your application will still work. It is strongly recommended that if you
+ * are redirecting to another action, you use this result rather than the
  * standard redirect result.
- *
- * See examples below for an example of how request parameters could be passed 
in.
- *
+ * 
+ * See examples below for an example of how request parameters could be passed
+ * in.
+ * 
  * <!-- END SNIPPET: description -->
- *
+ * 
  * <b>This result type takes the following parameters:</b>
- *
+ * 
  * <!-- START SNIPPET: params -->
- *
+ * 
  * <ul>
- *
- * <li><b>actionName (default)</b> - the name of the action that will be 
redirect to</li>
- *
- * <li><b>namespace</b> - used to determine which namespace the action is in 
that we're redirecting to . If namespace is
- * null, this defaults to the current namespace</li>
- *
- * <li><b>supressEmptyParameters</b> - optional boolean (defaults to false) 
that can prevent parameters with no values
- * from being included in the redirect URL.</li>
- *
+ * 
+ * <li><b>actionName (default)</b> - the name of the action that will be
+ * redirect to</li>
+ * 
+ * <li><b>namespace</b> - used to determine which namespace the action is in
+ * that we're redirecting to . If namespace is null, this defaults to the
+ * current namespace</li>
+ * 
+ * <li><b>suppressEmptyParameters</b> - optional boolean (defaults to false) 
that
+ * can prevent parameters with no values from being included in the redirect
+ * URL.</li>
+ * 
  * </ul>
- *
+ * 
  * <!-- END SNIPPET: params -->
- *
+ * 
  * <b>Example:</b>
- *
- * <pre><!-- START SNIPPET: example -->
+ * 
+ * <pre>
+ * <!-- START SNIPPET: example -->
  * &lt;package name="public" extends="struts-default"&gt;
  *     &lt;action name="login" class="..."&gt;
  *         &lt;!-- Redirect to another namespace --&gt;
@@ -75,19 +84,19 @@ import java.util.List;
  *         &lt;/result&gt;
  *     &lt;/action&gt;
  * &lt;/package&gt;
- *
+ * 
  * &lt;package name="secure" extends="struts-default" namespace="/secure"&gt;
  *     &lt;-- Redirect to an action in the same namespace --&gt;
  *     &lt;action name="dashboard" class="..."&gt;
  *         &lt;result&gt;dashboard.jsp&lt;/result&gt;
  *         &lt;result name="error" 
type="redirectAction"&gt;error&lt;/result&gt;
  *     &lt;/action&gt;
- *
+ * 
  *     &lt;action name="error" class="..."&gt;
  *         &lt;result&gt;error.jsp&lt;/result&gt;
  *     &lt;/action&gt;
  * &lt;/package&gt;
- *
+ * 
  * &lt;package name="passingRequestParameters" extends="struts-default" 
namespace="/passingRequestParameters"&gt;
  *    &lt;-- Pass parameters (reportType, width and height) --&gt;
  *    &lt;!--
@@ -102,14 +111,15 @@ import java.util.List;
  *          &lt;param name="width"&gt;100&lt;/param&gt;
  *          &lt;param name="height"&gt;100&lt;/param&gt;
  *          &lt;param name="empty"&gt;&lt;/param&gt;
- *          &lt;param name="supressEmptyParameters"&gt;true&lt;/param&gt;
+ *          &lt;param name="suppressEmptyParameters"&gt;true&lt;/param&gt;
  *       &lt;/result&gt;
  *    &lt;/action&gt;
  * &lt;/package&gt;
- *
- *
- * <!-- END SNIPPET: example --></pre>
- *
+ * 
+ * 
+ * <!-- END SNIPPET: example -->
+ * </pre>
+ * 
  * @see ActionMapper
  */
 public class ServletActionRedirectResult extends ServletRedirectResult 
implements ReflectionExceptionHandler {
@@ -137,7 +147,6 @@ public class ServletActionRedirectResult
         this(null, actionName, method, null);
     }
 
-
     public ServletActionRedirectResult(String namespace, String actionName, 
String method) {
         this(namespace, actionName, method, null);
     }
@@ -149,21 +158,26 @@ public class ServletActionRedirectResult
         this.method = method;
     }
 
-
     /**
      * @see 
com.opensymphony.xwork2.Result#execute(com.opensymphony.xwork2.ActionInvocation)
      */
-    public void execute(ActionInvocation invocation) throws Exception {
+    public void execute(ActionInvocation invocation) throws Exception
+    {
         actionName = conditionalParse(actionName, invocation);
-        if (namespace == null) {
+        if (namespace == null)
+        {
             namespace = invocation.getProxy().getNamespace();
-        } else {
+        }
+        else
+        {
             namespace = conditionalParse(namespace, invocation);
         }
-        if (method == null) {
+        if (method == null)
+        {
             method = "";
         }
-        else {
+        else
+        {
             method = conditionalParse(method, invocation);
         }
 
@@ -176,34 +190,41 @@ public class ServletActionRedirectResult
 
     /**
      * Sets the action name
-     *
-     * @param actionName The name
+     * 
+     * @param actionName
+     *            The name
      */
-    public void setActionName(String actionName) {
+    public void setActionName(String actionName)
+    {
         this.actionName = actionName;
     }
 
     /**
      * Sets the namespace
-     *
-     * @param namespace The namespace
+     * 
+     * @param namespace
+     *            The namespace
      */
-    public void setNamespace(String namespace) {
+    public void setNamespace(String namespace)
+    {
         this.namespace = namespace;
     }
 
     /**
      * Sets the method
-     *
-     * @param method The method
+     * 
+     * @param method
+     *            The method
      */
-    public void setMethod(String method) {
+    public void setMethod(String method)
+    {
         this.method = method;
     }
 
-    protected List<String> getProhibitedResultParams() {
-        return Arrays.asList(new String[]{
-                DEFAULT_PARAM, "namespace", "method", "encode", "parse", 
"location",
-                "prependServletContext", "supressEmptyParameters", "anchor"});
+    protected List<String> getProhibitedResultParams()
+    {
+        return Arrays.asList(new String[] {
+                DEFAULT_PARAM, "namespace", "method", "encode", "parse", 
"location", "prependServletContext", "suppressEmptyParameters", "anchor"
+        });
     }
 }

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java?rev=1096838&r1=1096837&r2=1096838&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java
 Tue Apr 26 18:28:38 2011
@@ -21,21 +21,8 @@
 
 package org.apache.struts2.dispatcher;
 
-import com.opensymphony.xwork2.ActionContext;
-import com.opensymphony.xwork2.ActionInvocation;
-import com.opensymphony.xwork2.config.entities.ResultConfig;
-import com.opensymphony.xwork2.inject.Inject;
-import com.opensymphony.xwork2.util.logging.Logger;
-import com.opensymphony.xwork2.util.logging.LoggerFactory;
-import com.opensymphony.xwork2.util.reflection.ReflectionException;
-import com.opensymphony.xwork2.util.reflection.ReflectionExceptionHandler;
-import org.apache.struts2.ServletActionContext;
-import org.apache.struts2.dispatcher.mapper.ActionMapper;
-import org.apache.struts2.dispatcher.mapper.ActionMapping;
-import org.apache.struts2.views.util.UrlHelper;
+import static javax.servlet.http.HttpServletResponse.SC_FOUND;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Iterator;
@@ -43,12 +30,26 @@ import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
-import static javax.servlet.http.HttpServletResponse.SC_FOUND;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.struts2.ServletActionContext;
+import org.apache.struts2.dispatcher.mapper.ActionMapper;
+import org.apache.struts2.dispatcher.mapper.ActionMapping;
+import org.apache.struts2.views.util.UrlHelper;
 
+import com.opensymphony.xwork2.ActionContext;
+import com.opensymphony.xwork2.ActionInvocation;
+import com.opensymphony.xwork2.config.entities.ResultConfig;
+import com.opensymphony.xwork2.inject.Inject;
+import com.opensymphony.xwork2.util.logging.Logger;
+import com.opensymphony.xwork2.util.logging.LoggerFactory;
+import com.opensymphony.xwork2.util.reflection.ReflectionException;
+import com.opensymphony.xwork2.util.reflection.ReflectionExceptionHandler;
 
 /**
  * <!-- START SNIPPET: description -->
- *
+ * 
  * Calls the {@link HttpServletResponse#sendRedirect(String) sendRedirect}
  * method to the location specified. The response is told to redirect the
  * browser to the specified location (a new request from the client). The
@@ -57,40 +58,42 @@ import static javax.servlet.http.HttpSer
  * available. This is because actions are built on a single-thread model. The
  * only way to pass data is through the session or with web parameters
  * (url?name=value) which can be OGNL expressions.
- *
+ * 
  * <!-- END SNIPPET: description -->
  * <p/>
  * <b>This result type takes the following parameters:</b>
- *
+ * 
  * <!-- START SNIPPET: params -->
- *
+ * 
  * <ul>
- *
+ * 
  * <li><b>location (default)</b> - the location to go to after execution.</li>
- *
+ * 
  * <li><b>parse</b> - true by default. If set to false, the location param will
  * not be parsed for Ognl expressions.</li>
- *
+ * 
  * <li><b>anchor</b> - optional, you can specify an anchor for result.</li>
- *
+ * 
  * </ul>
- *
+ * 
  * <p>
  * This result follows the same rules from {@link StrutsResultSupport}.
  * </p>
- *
+ * 
  * <!-- END SNIPPET: params -->
- *
+ * 
  * <b>Example:</b>
- *
- * <pre><!-- START SNIPPET: example -->
+ * 
+ * <pre>
+ * <!-- START SNIPPET: example -->
  * &lt;result name="success" type="redirect"&gt;
  *   &lt;param name="location"&gt;foo.jsp&lt;/param&gt;
  *   &lt;param name="parse"&gt;false&lt;/param&gt;
  *   &lt;param name="anchor"&gt;FRAGMENT&lt;/param&gt;
  * &lt;/result&gt;
- * <!-- END SNIPPET: example --></pre>
- *
+ * <!-- END SNIPPET: example -->
+ * </pre>
+ * 
  */
 public class ServletRedirectResult extends StrutsResultSupport implements 
ReflectionExceptionHandler {
 
@@ -104,10 +107,10 @@ public class ServletRedirectResult exten
 
     protected int statusCode = SC_FOUND;
 
-    protected boolean supressEmptyParameters = false;
+    protected boolean suppressEmptyParameters = false;
 
     protected Map<String, String> requestParameters = new 
LinkedHashMap<String, String>();
-    
+
     protected String anchor;
 
     public ServletRedirectResult() {
@@ -117,41 +120,50 @@ public class ServletRedirectResult exten
     public ServletRedirectResult(String location) {
         this(location, null);
     }
-    
+
     public ServletRedirectResult(String location, String anchor) {
         super(location);
         this.anchor = anchor;
     }
-    
+
     @Inject
-    public void setActionMapper(ActionMapper mapper) {
+    public void setActionMapper(ActionMapper mapper)
+    {
         this.actionMapper = mapper;
     }
 
-    public void setStatusCode(int code) {
+    public void setStatusCode(int code)
+    {
         this.statusCode = code;
     }
 
     /**
      * Set the optional anchor value.
+     * 
      * @param anchor
      */
-    public void setAnchor(String anchor) {
+    public void setAnchor(String anchor)
+    {
         this.anchor = anchor;
     }
 
     /**
-     * Sets whether or not to prepend the servlet context path to the 
redirected URL.
-     *
-     * @param prependServletContext <tt>true</tt> to prepend the location with 
the servlet context path,
-     *                              <tt>false</tt> otherwise.
+     * Sets whether or not to prepend the servlet context path to the 
redirected
+     * URL.
+     * 
+     * @param prependServletContext
+     *            <tt>true</tt> to prepend the location with the servlet 
context
+     *            path, <tt>false</tt> otherwise.
      */
-    public void setPrependServletContext(boolean prependServletContext) {
+    public void setPrependServletContext(boolean prependServletContext)
+    {
         this.prependServletContext = prependServletContext;
     }
-    
-    public void execute(ActionInvocation invocation) throws Exception {
-        if (anchor != null) {
+
+    public void execute(ActionInvocation invocation) throws Exception
+    {
+        if (anchor != null)
+        {
             anchor = conditionalParse(anchor, invocation);
         }
 
@@ -159,47 +171,62 @@ public class ServletRedirectResult exten
     }
 
     /**
-     * Redirects to the location specified by calling {@link 
HttpServletResponse#sendRedirect(String)}.
-     *
-     * @param finalLocation the location to redirect to.
-     * @param invocation    an encapsulation of the action execution state.
-     * @throws Exception if an error occurs when redirecting.
+     * Redirects to the location specified by calling
+     * {@link HttpServletResponse#sendRedirect(String)}.
+     * 
+     * @param finalLocation
+     *            the location to redirect to.
+     * @param invocation
+     *            an encapsulation of the action execution state.
+     * @throws Exception
+     *             if an error occurs when redirecting.
      */
-    protected void doExecute(String finalLocation, ActionInvocation 
invocation) throws Exception {
+    protected void doExecute(String finalLocation, ActionInvocation 
invocation) throws Exception
+    {
         ActionContext ctx = invocation.getInvocationContext();
         HttpServletRequest request = (HttpServletRequest) 
ctx.get(ServletActionContext.HTTP_REQUEST);
         HttpServletResponse response = (HttpServletResponse) 
ctx.get(ServletActionContext.HTTP_RESPONSE);
 
-        if (isPathUrl(finalLocation)) {
-            if (!finalLocation.startsWith("/")) {
-                ActionMapping mapping = actionMapper.getMapping(
-                        request, 
Dispatcher.getInstance().getConfigurationManager()); 
+        if (isPathUrl(finalLocation))
+        {
+            if (!finalLocation.startsWith("/"))
+            {
+                ActionMapping mapping = actionMapper.getMapping(request, 
Dispatcher.getInstance().getConfigurationManager());
                 String namespace = null;
-                if (mapping != null) {
+                if (mapping != null)
+                {
                     namespace = mapping.getNamespace();
                 }
 
-                if ((namespace != null) && (namespace.length() > 0) && 
(!"/".equals(namespace))) {
+                if ((namespace != null) && (namespace.length() > 0) && 
(!"/".equals(namespace)))
+                {
                     finalLocation = namespace + "/" + finalLocation;
-                } else {
+                }
+                else
+                {
                     finalLocation = "/" + finalLocation;
                 }
             }
 
             // if the URL's are relative to the servlet context, append the 
servlet context path
-            if (prependServletContext && (request.getContextPath() != null) && 
(request.getContextPath().length() > 0)) {
+            if (prependServletContext && (request.getContextPath() != null) && 
(request.getContextPath().length() > 0))
+            {
                 finalLocation = request.getContextPath() + finalLocation;
             }
 
             ResultConfig resultConfig = 
invocation.getProxy().getConfig().getResults().get(invocation.getResultCode());
-            if (resultConfig != null ) {
+            if (resultConfig != null)
+            {
                 Map resultConfigParams = resultConfig.getParams();
-                for (Iterator i = resultConfigParams.entrySet().iterator(); 
i.hasNext();) {
+                for (Iterator i = resultConfigParams.entrySet().iterator(); 
i.hasNext();)
+                {
                     Map.Entry e = (Map.Entry) i.next();
 
-                    if (!getProhibitedResultParams().contains(e.getKey())) {
+                    if (!getProhibitedResultParams().contains(e.getKey()))
+                    {
                         String potentialValue = e.getValue() == null ? "" : 
conditionalParse(e.getValue().toString(), invocation);
-                        if (!supressEmptyParameters || ((potentialValue != 
null) && (potentialValue.length() > 0))) {
+                        if (!suppressEmptyParameters || ((potentialValue != 
null) && (potentialValue.length() > 0)))
+                        {
                             requestParameters.put(e.getKey().toString(), 
potentialValue);
                         }
                     }
@@ -210,39 +237,47 @@ public class ServletRedirectResult exten
             UrlHelper.buildParametersString(requestParameters, tmpLocation, 
"&");
 
             // add the anchor
-            if (anchor != null) {
+            if (anchor != null)
+            {
                 tmpLocation.append('#').append(anchor);
             }
 
             finalLocation = response.encodeRedirectURL(tmpLocation.toString());
         }
 
-        if (LOG.isDebugEnabled()) {
+        if (LOG.isDebugEnabled())
+        {
             LOG.debug("Redirecting to finalLocation " + finalLocation);
         }
 
         sendRedirect(response, finalLocation);
     }
 
-    protected List<String> getProhibitedResultParams() {
-        return Arrays.asList(new String[]{
-                DEFAULT_PARAM, "namespace", "method", "encode", "parse", 
"location",
-                "prependServletContext", "supressEmptyParameters", "anchor"});
+    protected List<String> getProhibitedResultParams()
+    {
+        return Arrays.asList(new String[] {
+                DEFAULT_PARAM, "namespace", "method", "encode", "parse", 
"location", "prependServletContext", "suppressEmptyParameters", "anchor"
+        });
     }
 
-
     /**
-     * Sends the redirection.  Can be overridden to customize how the redirect 
is handled (i.e. to use a different
-     * status code)
-     *
-     * @param response The response
-     * @param finalLocation The location URI
+     * Sends the redirection. Can be overridden to customize how the redirect 
is
+     * handled (i.e. to use a different status code)
+     * 
+     * @param response
+     *            The response
+     * @param finalLocation
+     *            The location URI
      * @throws IOException
      */
-    protected void sendRedirect(HttpServletResponse response, String 
finalLocation) throws IOException {
-        if (SC_FOUND == statusCode) {
+    protected void sendRedirect(HttpServletResponse response, String 
finalLocation) throws IOException
+    {
+        if (SC_FOUND == statusCode)
+        {
             response.sendRedirect(finalLocation);
-        } else {
+        }
+        else
+        {
             response.setStatus(statusCode);
             response.setHeader("Location", finalLocation);
             response.getWriter().write(finalLocation);
@@ -251,7 +286,8 @@ public class ServletRedirectResult exten
 
     }
 
-    private static boolean isPathUrl(String url) {
+    private static boolean isPathUrl(String url)
+    {
         // filter out "http:", "https:", "mailto:";, "file:", "ftp:"
         // since the only valid places for : in URL's is before the path 
specification
         // either before the port, or after the protocol
@@ -259,26 +295,32 @@ public class ServletRedirectResult exten
     }
 
     /**
-     * Sets the supressEmptyParameters option
-     *
-     * @param supressEmptyParameters The new value for this option
+     * Sets the suppressEmptyParameters option
+     * 
+     * @param suppressEmptyParameters
+     *            The new value for this option
      */
-    public void setSupressEmptyParameters(boolean supressEmptyParameters) {
-        this.supressEmptyParameters = supressEmptyParameters;
+    public void setSuppressEmptyParameters(boolean suppressEmptyParameters)
+    {
+        this.suppressEmptyParameters = suppressEmptyParameters;
     }
 
     /**
      * Adds a request parameter to be added to the redirect url
-     *
-     * @param key The parameter name
-     * @param value The parameter value
+     * 
+     * @param key
+     *            The parameter name
+     * @param value
+     *            The parameter value
      */
-    public ServletRedirectResult addParameter(String key, Object value) {
+    public ServletRedirectResult addParameter(String key, Object value)
+    {
         requestParameters.put(key, String.valueOf(value));
         return this;
     }
 
-    public void handle(ReflectionException ex) {
+    public void handle(ReflectionException ex)
+    {
         // Only log as debug as they are probably parameters to be appended to 
the url
         LOG.debug(ex.getMessage(), ex);
     }


Reply via email to