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 ms...@apache.org on 2003/08/06 21:35:38 UTC
cvs commit: jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/sampler HTTPSampler.java SoapSampler.java
mstover1 2003/08/06 12:35:38
Modified: src/core/org/apache/jmeter/config/gui ArgumentsPanel.java
src/core/org/apache/jmeter/save SaveService.java
src/core/org/apache/jmeter/testelement/property
AbstractProperty.java MapProperty.java
src/core/org/apache/jmeter/threads JMeterContext.java
src/protocol/http/org/apache/jmeter/protocol/http/proxy
HttpRequestHdr.java
src/protocol/http/org/apache/jmeter/protocol/http/sampler
HTTPSampler.java SoapSampler.java
Log:
Fixing bugs with SOAP Sampler
adding support for gzip encoding
fixing bugs with loading jmx files that effected no one but me :-)
Revision Changes Path
1.19 +2 -2 jakarta-jmeter/src/core/org/apache/jmeter/config/gui/ArgumentsPanel.java
Index: ArgumentsPanel.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/config/gui/ArgumentsPanel.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- ArgumentsPanel.java 25 Jun 2003 20:47:31 -0000 1.18
+++ ArgumentsPanel.java 6 Aug 2003 19:35:37 -0000 1.19
@@ -377,7 +377,7 @@
* Stop any editing that is currently being done on the table. This will
* save any changes that have already been made.
*/
- private void stopTableEditing()
+ protected void stopTableEditing()
{
if (table.isEditing())
{
1.23 +7 -7 jakarta-jmeter/src/core/org/apache/jmeter/save/SaveService.java
Index: SaveService.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/save/SaveService.java,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- SaveService.java 27 Jun 2003 21:31:49 -0000 1.22
+++ SaveService.java 6 Aug 2003 19:35:37 -0000 1.23
@@ -967,11 +967,11 @@
}
else if (items[i].getName().equals("testelement"))
{
- coll.add(createTestElement(items[i]));
+ coll.add(new TestElementProperty(items[i].getAttribute("name"),createTestElement(items[i])));
}
else if (items[i].getName().equals("collection"))
{
- coll.add(createCollection(items[i]));
+ coll.add(new CollectionProperty(items[i].getAttribute("name"),createCollection(items[i])));
}
else if (items[i].getName().equals("string"))
{
@@ -979,7 +979,7 @@
}
else if (items[i].getName().equals("map"))
{
- coll.add(createMap(items[i]));
+ coll.add(new MapProperty(items[i].getAttribute("name"),createMap(items[i])));
}
}
return coll;
@@ -1027,17 +1027,17 @@
{
map.put(
items[i].getAttribute("name"),
- createTestElement(items[i]));
+ new TestElementProperty(items[i].getAttribute("name"),createTestElement(items[i])));
}
else if (items[i].getName().equals("collection"))
{
map.put(
items[i].getAttribute("name"),
- createCollection(items[i]));
+ new CollectionProperty(items[i].getAttribute("name"),createCollection(items[i])));
}
else if (items[i].getName().equals("map"))
{
- map.put(items[i].getAttribute("name"), createMap(items[i]));
+ map.put(items[i].getAttribute("name"), new MapProperty(items[i].getAttribute("name"),createMap(items[i])));
}
}
return map;
1.11 +2 -2 jakarta-jmeter/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java
Index: AbstractProperty.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- AbstractProperty.java 16 Jul 2003 15:30:15 -0000 1.10
+++ AbstractProperty.java 6 Aug 2003 19:35:37 -0000 1.11
@@ -433,7 +433,7 @@
log.error("Bad collection", e);
}
}
- newColl.put(item, convertObject(item));
+ newColl.put(item, convertObject(prop));
}
if (newColl != null)
{
1.11 +3 -1 jakarta-jmeter/src/core/org/apache/jmeter/testelement/property/MapProperty.java
Index: MapProperty.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/testelement/property/MapProperty.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- MapProperty.java 16 Jul 2003 13:12:11 -0000 1.10
+++ MapProperty.java 6 Aug 2003 19:35:37 -0000 1.11
@@ -69,7 +69,9 @@
public MapProperty(String name, Map value)
{
super(name);
+ log.info("map = " + value);
this.value = normalizeMap(value);
+ log.info("normalized map = "+this.value);
}
public MapProperty()
1.10 +12 -1 jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterContext.java
Index: JMeterContext.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterContext.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- JMeterContext.java 3 Aug 2003 18:19:19 -0000 1.9
+++ JMeterContext.java 6 Aug 2003 19:35:38 -0000 1.10
@@ -14,6 +14,7 @@
Sampler previousSampler;
boolean samplingStarted;
private int threadNum;
+ private byte[] readBuffer = null;
JMeterContext()
{
@@ -31,11 +32,21 @@
previousSampler = null;
samplingStarted = false;
threadNum = 0;
+ readBuffer = null;
}
public JMeterVariables getVariables()
{
return variables;
+ }
+
+ public byte[] getReadBuffer()
+ {
+ if(readBuffer == null)
+ {
+ readBuffer = new byte[8192];
+ }
+ return readBuffer;
}
public void setVariables(JMeterVariables vars)
1.14 +3 -4 jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/proxy/HttpRequestHdr.java
Index: HttpRequestHdr.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/proxy/HttpRequestHdr.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- HttpRequestHdr.java 20 Jun 2003 14:15:35 -0000 1.13
+++ HttpRequestHdr.java 6 Aug 2003 19:35:38 -0000 1.14
@@ -142,8 +142,7 @@
{
String key = (String) keys.next();
if (!key.equals("proxy-connection")
- && !key.equals("content-length")
- && !key.equals("accept-encoding"))
+ && !key.equals("content-length"))
{
manager.add((Header) headers.get(key));
}
1.47 +33 -25 jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSampler.java
Index: HTTPSampler.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSampler.java,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -r1.46 -r1.47
--- HTTPSampler.java 18 Jul 2003 14:38:01 -0000 1.46
+++ HTTPSampler.java 6 Aug 2003 19:35:38 -0000 1.47
@@ -63,6 +63,7 @@
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
+import java.util.zip.GZIPInputStream;
import org.apache.jmeter.config.Argument;
import org.apache.jmeter.config.Arguments;
@@ -82,6 +83,7 @@
import org.apache.jmeter.testelement.property.PropertyIterator;
import org.apache.jmeter.testelement.property.StringProperty;
import org.apache.jmeter.testelement.property.TestElementProperty;
+import org.apache.jmeter.threads.JMeterContextService;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jmeter.util.SSLManager;
import org.apache.jorphan.logging.LoggingManager;
@@ -138,11 +140,10 @@
private static final PostWriter postWriter = new PostWriter();
transient protected HttpURLConnection conn;
private HTTPSamplerFull imageSampler;
-
- static
- {
- System.setProperty("java.protocol.handler.pkgs", JMeterUtils.getPropDefault("ssl.pkgs","com.sun.net.ssl.internal.www.protocol"));
- System.setProperty("javax.net.ssl.debug", "all");
+
+ static {
+ System.setProperty("java.protocol.handler.pkgs", JMeterUtils.getPropDefault("ssl.pkgs", "com.sun.net.ssl.internal.www.protocol"));
+ System.setProperty("javax.net.ssl.debug", "all");
}
private static PatternCacheLRU patternCache = new PatternCacheLRU(1000, new Perl5Compiler());
@@ -476,7 +477,7 @@
{
pathAndQuery = "/" + pathAndQuery;
}
- if (getPort() == UNSPECIFIED_PORT || getPort() == 80 )
+ if (getPort() == UNSPECIFIED_PORT || getPort() == 80)
{
return new URL(getProtocol(), getDomain(), pathAndQuery);
}
@@ -502,9 +503,9 @@
{
item = (HTTPArgument) iter.next().getObjectValue();
}
- catch(ClassCastException e)
+ catch (ClassCastException e)
{
- item = new HTTPArgument((Argument)iter.next().getObjectValue());
+ item = new HTTPArgument((Argument) iter.next().getObjectValue());
}
if (!first)
{
@@ -602,14 +603,14 @@
conn.setRequestMethod(method);
setConnectionHeaders(conn, u, getHeaderManager());
String cookies = setConnectionCookie(conn, u, getCookieManager());
- if (res!=null)
- {
- StringBuffer sb = new StringBuffer();
- sb.append(this.toString());
- sb.append("\nCookie Data:\n");
- sb.append(cookies);
- res.setSamplerData(sb.toString());
- }
+ if (res != null)
+ {
+ StringBuffer sb = new StringBuffer();
+ sb.append(this.toString());
+ sb.append("\nCookie Data:\n");
+ sb.append(cookies);
+ res.setSamplerData(sb.toString());
+ }
setConnectionAuthorization(conn, u, getAuthManager());
return conn;
}
@@ -687,11 +688,18 @@
***************************************/
protected byte[] readResponse(HttpURLConnection conn) throws IOException
{
- byte[] buffer = new byte[4096];
+ byte[] readBuffer = JMeterContextService.getContext().getReadBuffer();
BufferedInputStream in;
try
{
- in = new BufferedInputStream(conn.getInputStream());
+ if (conn.getContentEncoding() != null && conn.getContentEncoding().equals("gzip"))
+ {
+ in = new BufferedInputStream(new GZIPInputStream(conn.getInputStream()));
+ }
+ else
+ {
+ in = new BufferedInputStream(conn.getInputStream());
+ }
}
catch (Exception e)
{
@@ -699,9 +707,9 @@
}
java.io.ByteArrayOutputStream w = new ByteArrayOutputStream();
int x = 0;
- while ((x = in.read(buffer)) > -1)
+ while ((x = in.read(readBuffer)) > -1)
{
- w.write(buffer, 0, x);
+ w.write(readBuffer, 0, x);
}
in.close();
w.flush();
@@ -749,7 +757,7 @@
***************************************/
private String setConnectionCookie(HttpURLConnection conn, URL u, CookieManager cookieManager)
{
- String cookieHeader=null;
+ String cookieHeader = null;
if (cookieManager != null)
{
cookieHeader = cookieManager.getCookieHeaderForURL(u);
@@ -933,7 +941,7 @@
u = getUrl();
res.setSampleLabel(getName());
// specify the data to the result.
-// res.setSamplerData(this.toString());
+ // res.setSamplerData(this.toString());
/****************************************
* END - cached logging hack
***************************************/
@@ -980,7 +988,7 @@
}
else
{
- time = bundleResponseInResult(time,res,conn);//System.currentTimeMillis() - time;
+ time = bundleResponseInResult(time, res, conn); //System.currentTimeMillis() - time;
redirectUrl(conn, u);
SampleResult redirectResult = sample(redirects + 1);
res.addSubResult(redirectResult);
1.5 +26 -2 jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/sampler/SoapSampler.java
Index: SoapSampler.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/sampler/SoapSampler.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- SoapSampler.java 3 Aug 2003 13:34:04 -0000 1.4
+++ SoapSampler.java 6 Aug 2003 19:35:38 -0000 1.5
@@ -91,7 +91,14 @@
setPort(url.getPort());
setProtocol(url.getProtocol());
setMethod(POST);
- setPath(url.getPath());
+ if(url.getQuery() != null && url.getQuery().compareTo("") != 0)
+ {
+ setPath(url.getPath() + "?" + url.getQuery());
+ }
+ else
+ {
+ setPath(url.getPath());
+ }
}
catch (MalformedURLException e1)
{
@@ -99,6 +106,23 @@
}
return super.sample(e);
}
+
+ public String toString()
+ {
+ try
+ {
+ String xml = getXmlData();
+ if(xml.length() > 100)
+ {
+ xml = xml.substring(0,100);
+ }
+ return this.getUrl().toString() + "\nXML Data: " + xml;
+ }
+ catch (MalformedURLException e)
+ {
+ return "";
+ }
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org