Author: sebb Date: Thu Jan 21 14:45:57 2010 New Revision: 901727 URL: http://svn.apache.org/viewvc?rev=901727&view=rev Log: Bug 48570 - AjpSampler doesn't support query parameters (GET/POST)
Modified: jakarta/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/AjpSampler.java jakarta/jmeter/trunk/xdocs/changes.xml Modified: jakarta/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/AjpSampler.java URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/AjpSampler.java?rev=901727&r1=901726&r2=901727&view=diff ============================================================================== --- jakarta/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/AjpSampler.java (original) +++ jakarta/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/AjpSampler.java Thu Jan 21 14:45:57 2010 @@ -31,6 +31,7 @@ import org.apache.jmeter.protocol.http.control.CookieManager; import org.apache.jmeter.protocol.http.control.Header; import org.apache.jmeter.protocol.http.control.HeaderManager; +import org.apache.jmeter.protocol.http.util.HTTPFileArg; import org.apache.jmeter.testelement.property.CollectionProperty; import org.apache.jmeter.testelement.property.JMeterProperty; import org.apache.jmeter.testelement.property.PropertyIterator; @@ -91,6 +92,7 @@ private transient ByteArrayOutputStream responseData = new ByteArrayOutputStream(); private int inpos = 0; private int outpos = 0; + private transient String stringBody = null; private transient InputStream body = null; public AjpSampler() { @@ -131,6 +133,7 @@ } channel = null; body = null; + stringBody = null; } private void setupConnection(URL url, @@ -171,7 +174,7 @@ } else { setString(HTTP_1_1); } - setString(url.getFile()); + setString(url.getPath()); setString(localAddress); setString(localName); setString(host); @@ -181,7 +184,12 @@ String hdr = setConnectionHeaders(url, host, method); res.setRequestHeaders(hdr); res.setCookies(setConnectionCookies(url, getCookieManager())); - setByte((byte)0xff); // Attributes not supported + String query = url.getQuery(); + if (query != null) { + setByte((byte)0x05); // Marker for query string attribute + setString(query); + } + setByte((byte)0xff); // More general attributes not supported } private int getHeaderSize(String method, URL url) { @@ -267,9 +275,10 @@ } else { sb.append('&'); } - sb.append(arg.getName()).append('=').append(arg.getStringValue()); + sb.append(arg.getStringValue()); } - byte [] sbody = sb.toString().getBytes(); //FIXME - encoding + stringBody = sb.toString(); + byte [] sbody = stringBody.getBytes(); //FIXME - encoding cl = sbody.length; body = new ByteArrayInputStream(sbody); } @@ -364,6 +373,7 @@ throws IOException { send(); if(method.equals(POST)) { + res.setQueryString(stringBody); sendPostBody(); } handshake(res); Modified: jakarta/jmeter/trunk/xdocs/changes.xml URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=901727&r1=901726&r2=901727&view=diff ============================================================================== --- jakarta/jmeter/trunk/xdocs/changes.xml (original) +++ jakarta/jmeter/trunk/xdocs/changes.xml Thu Jan 21 14:45:57 2010 @@ -76,6 +76,7 @@ <li>Bug 48451 - Error in: SoapSampler.setPostHeaders(PostMethod post) in the else branch</li> <li>Bug 48542 - SoapSampler uses wrong response header field to decide if response is gzip encoded</li> <li>Bug 48568 - CookieManager broken for AjpSampler</li> +<li>Bug 48570 - AjpSampler doesn't support query parameters (GET/POST)</li> </ul> <h3>Other Samplers</h3> --------------------------------------------------------------------- To unsubscribe, e-mail: jmeter-dev-unsubscr...@jakarta.apache.org For additional commands, e-mail: jmeter-dev-h...@jakarta.apache.org