Author: markt Date: Mon Sep 23 20:52:58 2013 New Revision: 1525696 URL: http://svn.apache.org/r1525696 Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=55576 Preserve the order that request parameters were presented by the client.
Modified: tomcat/trunk/java/org/apache/catalina/util/ParameterMap.java tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java Modified: tomcat/trunk/java/org/apache/catalina/util/ParameterMap.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/util/ParameterMap.java?rev=1525696&r1=1525695&r2=1525696&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/util/ParameterMap.java (original) +++ tomcat/trunk/java/org/apache/catalina/util/ParameterMap.java Mon Sep 23 20:52:58 2013 @@ -14,17 +14,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - - package org.apache.catalina.util; - -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.Map; import org.apache.tomcat.util.res.StringManager; - /** * Extended implementation of <strong>HashMap</strong> that includes a * <code>locked</code> property. This class can be used to safely expose @@ -35,8 +31,7 @@ import org.apache.tomcat.util.res.String * @author Craig R. McClanahan * @version $Id$ */ - -public final class ParameterMap<K,V> extends HashMap<K,V> { +public final class ParameterMap<K,V> extends LinkedHashMap<K,V> { private static final long serialVersionUID = 1L; Modified: tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java?rev=1525696&r1=1525695&r2=1525696&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java Mon Sep 23 20:52:58 2013 @@ -23,7 +23,7 @@ import java.nio.charset.StandardCharsets import java.util.ArrayList; import java.util.Collections; import java.util.Enumeration; -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.Map; import org.apache.tomcat.util.buf.B2CConverter; @@ -49,8 +49,8 @@ public final class Parameters { private static final StringManager sm = StringManager.getManager("org.apache.tomcat.util.http"); - private final HashMap<String,ArrayList<String>> paramHashValues = - new HashMap<>(); + private final Map<String,ArrayList<String>> paramHashValues = + new LinkedHashMap<>(); private boolean didQueryParameters=false; private MessageBytes queryMB; --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org