Hi !

I have a problem testing a server which doesn't support chunked transfer-encoding. After some digging i found a parameter in jmeter.properties called httpclient.version that i set to 1.0, thinking chunked transfer-encoding is not http/1.0.

I was right but jmeter (or httpclient) seems to be rather schyzophrenic about this. I receive this exception :

org.apache.commons.httpclient.ProtocolException: HTTP/1.0 does not support chunk encoding at org.apache.commons.httpclient.methods.EntityEnclosingMethod.addContentLengthRequestHeader(EntityEnclosingMethod.java:407) at org.apache.commons.httpclient.methods.EntityEnclosingMethod.addRequestHeaders(EntityEnclosingMethod.java:370) at org.apache.commons.httpclient.HttpMethodBase.writeRequestHeaders(HttpMethodBase.java:2036) at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:1919) at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:993) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:324) at org.apache.jmeter.protocol.http.sampler.SoapSampler.sample(SoapSampler.java:224) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:658) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:647)
   at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:247)
   at java.lang.Thread.run(Thread.java:595)


And here are the logs :

2006/09/13 18:50:06 DEBUG - jmeter.protocol.http.sampler.HTTPSampler2: Thread Started 2006/09/13 18:50:06 DEBUG - jmeter.protocol.http.sampler.SoapSampler: Start : samplehttp://hp380rd17:9000/services/LoadBalance
2006/09/13 18:50:06 DEBUG - jmeter.protocol.http.sampler.SoapSampler: method
2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.useragent = Jakarta Commons-HttpClient/3.0.1 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.protocol.version = HTTP/1.1 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.connection-manager.class = class org.apache.commons.httpclient.SimpleHttpConnectionManager 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.protocol.cookie-policy = rfc2109 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.protocol.element-charset = US-ASCII 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.protocol.content-charset = ISO-8859-1 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.method.retry-handler = [EMAIL PROTECTED] 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.dateparser.patterns = [EEE, dd MMM yyyy HH:mm:ss zzz, EEEE, dd-MMM-yy HH:mm:ss zzz, EEE MMM d HH:mm:ss yyyy, EEE, dd-MMM-yyyy HH:mm:ss z, EEE, dd-MMM-yyyy HH-mm-ss z, EEE, dd MMM yy HH:mm:ss z, EEE dd-MMM-yyyy HH:mm:ss z, EEE dd MMM yyyy HH:mm:ss z, EEE dd-MMM-yyyy HH-mm-ss z, EEE dd-MMM-yy HH:mm:ss z, EEE dd MMM yy HH:mm:ss z, EEE,dd-MMM-yy HH:mm:ss z, EEE,dd-MMM-yyyy HH:mm:ss z, EEE, dd-MM-yyyy HH:mm:ss z] 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.methods.PostMethod: enter PostMethod.addParameter(String, String) 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.methods.EntityEnclosingMethod: enter EntityEnclosingMethod.clearRequestBody() 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.HttpClient: Java version: 1.5.0_06 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.HttpClient: Java vendor: Sun Microsystems Inc. 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.HttpClient: Java class path: /opt/jakarta-jmeter-2.2/bin/ApacheJMeter.jar:/opt/jakarta-jmeter-2.2/lib/Tidy.jar:/opt/jakarta-jmeter-2.2/lib/avalon-framework-4.1.4.jar:/opt/jakarta-jmeter-2.2/lib/batik-awt-util.jar:/opt/jakarta-jmeter-2.2/lib/bsf-2.3.0.jar:/opt/jakarta-jmeter-2.2/lib/bshclient.jar:/opt/jakarta-jmeter-2.2/lib/commons-codec-1.3.jar:/opt/jakarta-jmeter-2.2/lib/commons-collections.jar:/opt/jakarta-jmeter-2.2/lib/commons-httpclient-3.0.1.jar:/opt/jakarta-jmeter-2.2/lib/commons-jexl-1.0.jar:/opt/jakarta-jmeter-2.2/lib/commons-logging-1.1.jar:/opt/jakarta-jmeter-2.2/lib/excalibur-datasource-1.1.1.jar:/opt/jakarta-jmeter-2.2/lib/excalibur-instrument-1.0.jar:/opt/jakarta-jmeter-2.2/lib/excalibur-logger-1.1.jar:/opt/jakarta-jmeter-2.2/lib/excalibur-pool-1.2.jar:/opt/jakarta-jmeter-2.2/lib/htmlparser.jar:/opt/jakarta-jmeter-2.2/lib/htmlparserparser.jar:/opt/jakarta-jmeter-2.2/lib/htmlparserparser16.jar:/opt/jakarta-jmeter-2.2/lib/jCharts-0.7.5.jar:/opt/jakarta-jmeter-2.2/lib/jakarta-oro-2.0.8.jar:/opt/jakarta-jmeter-2.2/lib/jdom-1.0.jar:/opt/jakarta-jmeter-2.2/lib/jorphan.jar:/opt/jakarta-jmeter-2.2/lib/js.jar:/opt/jakarta-jmeter-2.2/lib/junit.jar:/opt/jakarta-jmeter-2.2/lib/logkit-1.2.jar:/opt/jakarta-jmeter-2.2/lib/soap.jar:/opt/jakarta-jmeter-2.2/lib/xalan.jar:/opt/jakarta-jmeter-2.2/lib/xercesImpl.jar:/opt/jakarta-jmeter-2.2/lib/xml-apis.jar:/opt/jakarta-jmeter-2.2/lib/xpp3_min-1.1.3.4.I.jar:/opt/jakarta-jmeter-2.2/lib/xstream-1.1.3.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_components.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_core.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_ftp.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_functions.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_http.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_java.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_jdbc.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_jms.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_junit.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_ldap.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_mail.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_monitors.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_report.jar:/opt/jakarta-jmeter-2.2/lib/ext/ApacheJMeter_tcp.jar:/opt/jakarta-jmeter-2.2/lib/junit/test.jar 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.HttpClient: Operating system name: Linux 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.HttpClient: Operating system architecture: i386 2006/09/13 18:50:06 DEBUG - org.apache.commons.httpclient.HttpClient: Operating system architecture: i386 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: Operating system version: 2.6.15-26-686 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: SUN 1.5: SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; JKS keystore; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: SunRsaSign 1.5: Sun RSA signature provider 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: SunJSSE 1.5: Sun JSSE provider(PKCS12, SunX509 key/trust factories, SSLv3, TLSv1) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: SunJCE 1.5: SunJCE Provider (implements RSA, DES, Triple DES, AES, Blowfish, ARCFOUR, RC2, PBE,
Diffie-Hellman, HMAC)
2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: SunJGSS 1.0: Sun (Kerberos v5) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: SunSASL 1.5: Sun SASL provider(implements client mechanisms for: DIGEST-MD5, GSSAPI, EXTERNAL, PLAIN, CRAM-MD5; server mechanisms for: DIGEST-MD5, GSSAPI, CRAM-MD5) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.protocol.cookie-policy = ignoreCookies 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.protocol.version = HTTP/1.0 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.params.DefaultHttpParams: Set parameter http.socket.timeout = 0 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.PostMethod: enter PostMethod.clearRequestBody() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.EntityEnclosingMethod: enter EntityEnclosingMethod.clearRequestBody() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: enter HttpClient.executeMethod(HttpMethod) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpClient: enter HttpClient.executeMethod(HostConfiguration,HttpMethod,HttpState) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodDirector: Attempt number 1 to process request 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.open() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: Open connection to server:9000 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.execute(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.writeRequest(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.writeRequestLine(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.generateRequestLine(HttpConnection, String, String, String, String) 2006/09/13 18:50:07 DEBUG - httpclient.wire.header: >> "POST /services/LoadBalance HTTP/1.0[\r][\n]" 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.print(String) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.write(byte[]) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.write(byte[], int, int) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.writeRequestHeaders(HttpState,HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.EntityEnclosingMethod: enter EntityEnclosingMethod.addRequestHeaders(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.ExpectContinueMethod: enter ExpectContinueMethod.addRequestHeaders(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.addRequestHeaders(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.addUserAgentRequestHeaders(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.addHostRequestHeader(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: Adding Host request header 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.addCookieRequestHeader(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpState: enter HttpState.getCookies() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodBase: enter HttpMethodBase.addProxyConnectionHeader(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.EntityEnclosingMethod: enter EntityEnclosingMethod.addContentLengthRequestHeader(HttpState, HttpConnection) 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.EntityEnclosingMethod: enter EntityEnclosingMethod.getRequestContentLength() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.PostMethod: enter PostMethod.hasRequestContent() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.methods.EntityEnclosingMethod: enter EntityEnclosingMethod.hasRequestContent() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpMethodDirector: Closing the connection. 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.close() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.closeSockedAndStreams() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.releaseConnection() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: Releasing connection back to connection manager. 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: enter HttpConnection.releaseConnection() 2006/09/13 18:50:07 DEBUG - org.apache.commons.httpclient.HttpConnection: Releasing connection back to connection manager.


Version in use :

jmeter : 2.2
http-client : 3.0.1
jre : sun 1.5.0_06-b05

It looks like a problem with the content length ... What do you think about this ?

Antoine


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

Reply via email to