Summary: | HTTP PUT does not honor request parameters | ||
---|---|---|---|
Product: | JMeter - Now in Github | Reporter: | Greg Smith <gregsmit> |
Component: | HTTP | Assignee: | JMeter issues mailing list <issues> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | p.mouawad |
Priority: | P2 | ||
Version: | 2.3 | ||
Target Milestone: | --- | ||
Hardware: | Other | ||
OS: | All | ||
Attachments: |
Tets plan with PUT requests using the two HTTP samplers
Put request with body Http Sampler without expected body |
Description
Greg Smith
2007-10-12 07:21:27 UTC
I believe this is fixed in SVN changelist 584535, so you can do some testing. But I will not mark this bug as fixed before I have added some unit tests for this case. Hi Alf, I extracted the latest (SVN 584775) and I am still having the problem with the latest version. To be more precise about my use case: I have REST style app that uses JSON and HTTP verbs for all client interaction. When I tried to use HTTP PUT, with Content Encoding of "application/json", Method of "PUT", and added a request parameter with my JSON data (Value = empty, Encode = not checked, Include Equals = not checked), I got the following as the request: PUT /resources/employees/user1 HTTP/1.1 Connection: keep-alive X-lori-time-1: 1192051198765 Accept-Encoding: gzip,deflate Referer: http://localhost:8080/ Cache-Control: no-cache Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Pragma: no-cache User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7 Keep-Alive: 300 Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 Host: localhost:8080 Accept-Language: en-us,en;q=0.5 Content-Type: application/json With no body. (no content length, either) The original sampler item was created through the HTTP Proxy Server. (which is why it has all of the above headers) By switching the same request to method = "POST", the JSON content from the request parameter is available in the body. I am happy to do any additional testing or help with debugging. Thanks (In reply to comment #2) If you could attach the test plan (remove any usernames / passwords), that would be great. Then I could use it for testing, just by changing the sampler slightly, to point it to the "HTTP Mirror Server" of JMeter. I think I'll manage to have a look at it tomorrow evening. Created attachment 20985 [details]
Tets plan with PUT requests using the two HTTP samplers
I managed to do some testing today.
Here it the test plan I use for testing, against the HTTP Mirror server.
I think I have solved the problem now, you should try the SVN changelist 584882. If you want to test that, it would be helpful. I'll try to add unit tests for the code tomorrow, so that we can be more certain that the code is correct. Hi Alf, I rebuilt with the latest, and my Test Plan with a PUT works now. That seemed to do it Thanks much, Greg Fixed in SVN changelist 585212. Created attachment 35796 [details]
Put request with body
Created attachment 35797 [details]
Http Sampler without expected body
*** Bug 60782 has been marked as a duplicate of this bug. *** Fixed within Bug 62248 This issue has been migrated to GitHub: https://github.com/apache/jmeter/issues/2035 |