Author: sebb
Date: Wed Mar 21 16:51:22 2007
New Revision: 521050

URL: http://svn.apache.org/viewvc?view=rev&rev=521050
Log:
Bug 41837 - Parameter value corruption in proxy

Modified:
    
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/config/MultipartUrlConfig.java
    
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/proxy/HttpRequestHdr.java
    jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml

Modified: 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/config/MultipartUrlConfig.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/config/MultipartUrlConfig.java?view=diff&rev=521050&r1=521049&r2=521050
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/config/MultipartUrlConfig.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/config/MultipartUrlConfig.java
 Wed Mar 21 16:51:22 2007
@@ -124,7 +124,7 @@
                                String name = parts[i].substring(index, 
parts[i].indexOf("\"", index));
                                index = parts[i].indexOf("\n", index) + 2;
                                String value = parts[i].substring(index).trim();
-                               this.addEncodedArgument(name, value);
+                               this.addArgument(name, value);
                        }
                }
        }

Modified: 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/proxy/HttpRequestHdr.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/proxy/HttpRequestHdr.java?view=diff&rev=521050&r1=521049&r2=521050
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/proxy/HttpRequestHdr.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/proxy/HttpRequestHdr.java
 Wed Mar 21 16:51:22 2007
@@ -80,6 +80,8 @@
 
        private HTTPSamplerBase sampler;
 
+       private HeaderManager headerManager;
+       
        /*
         * Optionally number the requests
         */
@@ -177,7 +179,7 @@
                return 0;
        }
 
-       public HeaderManager getHeaderManager() {
+       private HeaderManager createHeaderManager() {
                HeaderManager manager = new HeaderManager();
                Iterator keys = headers.keySet().iterator();
                while (keys.hasNext()) {
@@ -192,6 +194,13 @@
                return manager;
        }
 
+       public HeaderManager getHeaderManager() {
+               if(headerManager == null) {
+                       headerManager = createHeaderManager();
+               }
+               return headerManager;
+       }
+
        public HTTPSamplerBase getSampler() throws MalformedURLException, 
IOException, ProtocolException {
                // Damn! A whole new GUI just to instantiate a test element?
                // Isn't there a beter way?
@@ -269,6 +278,16 @@
                }
                if ((urlConfig = isMultipart(getContentType())) != null) {
                        urlConfig.parseArguments(postData);
+                       // If no file is uploaded, then it was really a 
multipart/form-data
+                       // post request. But currently, that is not supported, 
so we must
+                       // change the "Content-Type" header from 
multipart/form-data to
+                       // application/x-www-form-urlencoded, which is the one 
the HTTP Request
+                       // sampler will send
+                       if(urlConfig.getFilename() == null) {
+                               System.out.println("jada");
+                               
getHeaderManager().removeHeaderNamed("Content-Type");
+                               getHeaderManager().add(new 
Header("Content-Type", "application/x-www-form-urlencoded"));
+                       }
                        sampler.setArguments(urlConfig.getArguments());
                        sampler.setFileField(urlConfig.getFileFieldName());
                        sampler.setFilename(urlConfig.getFilename());

Modified: jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml?view=diff&rev=521050&r1=521049&r2=521050
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml (original)
+++ jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml Wed Mar 21 16:51:22 2007
@@ -191,6 +191,7 @@
 <li>Bug 40589 - Unescape XML entities in embedded URLs</li>
 <li>Bug 41902 - NPE in HTTPSampler when responseCode = -1</li>
 <li>Bug 41903 - ViewResultsFullVisualizer : status column looks bad when you 
do copy and paste</li>
+<li>Bug 41837 - Parameter value corruption in proxy</li>
 </ul>
 
 <h3>Version 2.2</h3>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to