You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by js...@apache.org on 2003/12/17 04:21:16 UTC

cvs commit: jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/util HTTPArgument.java

jsalvata    2003/12/16 19:21:16

  Modified:    src/core/org/apache/jmeter/functions AbstractFunction.java
               src/protocol/http/org/apache/jmeter/protocol/http/parser
                        HtmlParsingUtils.java
               src/protocol/http/org/apache/jmeter/protocol/http/util
                        HTTPArgument.java
  Log:
  Using UTF-8 encoding for all URL encode/decode operations.
  
  PR: 25257
  
  Revision  Changes    Path
  1.8       +11 -2     jakarta-jmeter/src/core/org/apache/jmeter/functions/AbstractFunction.java
  
  Index: AbstractFunction.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/functions/AbstractFunction.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- AbstractFunction.java	5 Oct 2003 01:05:32 -0000	1.7
  +++ AbstractFunction.java	17 Dec 2003 03:21:16 -0000	1.8
  @@ -1,5 +1,6 @@
   package org.apache.jmeter.functions;
   
  +import java.io.UnsupportedEncodingException;
   import java.net.URLDecoder;
   import java.util.Collection;
   import java.util.LinkedList;
  @@ -70,7 +71,15 @@
               }
               else if (!arg.equals(","))
               {
  -                arguments.add(URLDecoder.decode(arg));
  +                try
  +                {
  +                    arguments.add(URLDecoder.decode(arg, "UTF-8"));
  +                }
  +                catch (UnsupportedEncodingException e)
  +                {
  +                    // UTF-8 unsupported? You must be joking!
  +                    throw new Error(e);
  +                }
               }
               previous = arg;
           }
  
  
  
  1.4       +7 -8      jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/parser/HtmlParsingUtils.java
  
  Index: HtmlParsingUtils.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/parser/HtmlParsingUtils.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- HtmlParsingUtils.java	12 Dec 2003 20:03:53 -0000	1.3
  +++ HtmlParsingUtils.java	17 Dec 2003 03:21:16 -0000	1.4
  @@ -125,17 +125,16 @@
           Perl5Matcher matcher = (Perl5Matcher) localMatcher.get();
           PropertyIterator iter = config.getArguments().iterator();
   
  -        // In JDK1.2, URLDecoder.decode has Exception in its throws clause.
  -        // However, it was removed in JDK1.3. Since JMeter is
  -        // JDK1.2-compatible, we need to catch Exception.
           String query = null;
           try
           {
  -            query = URLDecoder.decode(newLink.getQueryString());// TODO use decode(String,"UTF-8") instead?
  +            query = URLDecoder.decode(newLink.getQueryString(),"UTF-8");
           }
  -        catch (Exception e)
  +        catch (UnsupportedEncodingException e)
           {
  -            // do nothing. query will remain null.
  +            // UTF-8 unsupported? You must be joking!
  +            log.error("UTF-8 encoding not supported!");
  +            throw new Error(e);
           }
   
           if (query == null && config.getArguments().getArgumentCount() > 0)
  
  
  
  1.11      +12 -2     jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/util/HTTPArgument.java
  
  Index: HTTPArgument.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/util/HTTPArgument.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- HTTPArgument.java	16 Aug 2003 17:22:51 -0000	1.10
  +++ HTTPArgument.java	17 Dec 2003 03:21:16 -0000	1.11
  @@ -55,6 +55,7 @@
   package org.apache.jmeter.protocol.http.util;
   
   import java.io.Serializable;
  +import java.io.UnsupportedEncodingException;
   import java.net.URLDecoder;
   import java.util.LinkedList;
   import java.util.List;
  @@ -132,8 +133,17 @@
           setAlwaysEncoded(true);
           if (alreadyEncoded)
           {
  -            name = URLDecoder.decode(name);
  -            value = URLDecoder.decode(value.toString());
  +            try
  +            {
  +                name = URLDecoder.decode(name, "UTF-8");
  +                value = URLDecoder.decode(value.toString(), "UTF-8");
  +            }
  +            catch (UnsupportedEncodingException e)
  +            {
  +                // UTF-8 unsupported? You must be joking!
  +                log.error("UTF-8 encoding not supported!");
  +                throw new Error(e);
  +            }
           }
           setName(name);
           setValue(value);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org