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 se...@apache.org on 2006/04/27 02:09:08 UTC
svn commit: r397346 - in /jakarta/jmeter/branches/rel-2-1:
src/core/org/apache/jmeter/resources/
src/protocol/http/org/apache/jmeter/protocol/http/modifier/
src/protocol/http/org/apache/jmeter/protocol/http/modifier/gui/
test/src/org/apache/jmeter/prot...
Author: sebb
Date: Wed Apr 26 17:09:06 2006
New Revision: 397346
URL: http://svn.apache.org/viewcvs?rev=397346&view=rev
Log:
Bug 15025 - URL Rewriter can cache Session ID
Added:
jakarta/jmeter/branches/rel-2-1/xdocs/images/screenshots/url_rewrite_example_b.png (with props)
Modified:
jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/resources/messages.properties
jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java
jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/gui/URLRewritingModifierGui.java
jakarta/jmeter/branches/rel-2-1/test/src/org/apache/jmeter/protocol/http/modifier/TestURLRewritingModifier.java
jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml
jakarta/jmeter/branches/rel-2-1/xdocs/images/screenshots/url_rewriter.png
jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/build-adv-web-test-plan.xml
jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml
Modified: jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/resources/messages.properties
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/resources/messages.properties?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/resources/messages.properties (original)
+++ jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/resources/messages.properties Wed Apr 26 17:09:06 2006
@@ -77,6 +77,7 @@
bsh_script_file=Script file
bsh_script_parameters=Parameters (-> String Parameters and String []bsh.args)
busy_testing=I'm busy testing, please stop the test before changing settings
+cache_session_id=Cache Session Id?
cancel=Cancel
cancel_exit_to_save=There are test items that have not been saved. Do you wish to save before exiting?
cancel_new_to_save=There are test items that have not been saved. Do you wish to save before clearing the test plan?
Modified: jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java (original)
+++ jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java Wed Apr 26 17:09:06 2006
@@ -43,7 +43,9 @@
public class URLRewritingModifier extends AbstractTestElement implements Serializable, PreProcessor {
- private Pattern pathExtensionEqualsQuestionmarkRegexp;
+ private static final String SEMI_COLON = ";"; // $NON-NLS-1$
+
+ private Pattern pathExtensionEqualsQuestionmarkRegexp;
private Pattern pathExtensionEqualsNoQuestionmarkRegexp;
@@ -54,14 +56,19 @@
private Pattern pathExtensionNoEqualsNoQuestionmarkRegexp;
// transient Perl5Compiler compiler = new Perl5Compiler();
- private final static String ARGUMENT_NAME = "argument_name";
+ private final static String ARGUMENT_NAME = "argument_name"; // $NON-NLS-1$
+
+ private final static String PATH_EXTENSION = "path_extension"; // $NON-NLS-1$
- private final static String PATH_EXTENSION = "path_extension";
+ private final static String PATH_EXTENSION_NO_EQUALS = "path_extension_no_equals"; // $NON-NLS-1$
- private final static String PATH_EXTENSION_NO_EQUALS = "path_extension_no_equals";
+ private final static String PATH_EXTENSION_NO_QUESTIONMARK = "path_extension_no_questionmark"; // $NON-NLS-1$
- private final static String PATH_EXTENSION_NO_QUESTIONMARK = "path_extension_no_questionmark";
+ private final static String SHOULD_CACHE = "cache_value"; // $NON-NLS-1$
+ // PreProcessors are cloned per-thread, so this will be saved per-thread
+ private String savedValue = ""; // $NON-NLS-1$
+
public void process() {
JMeterContext ctx = getThreadContext();
Sampler sampler = ctx.getCurrentSampler();
@@ -114,15 +121,23 @@
}
}
+ // Bug 15025 - save session value across samplers
+ if (shouldCache()){
+ if (value == null || value.length() == 0) {
+ value = savedValue;
+ } else {
+ savedValue = value;
+ }
+ }
modify((HTTPSamplerBase) sampler, value);
}
- private void modify(HTTPSamplerBase sampler, String value) {
+ private void modify(HTTPSamplerBase sampler, String value) {
if (isPathExtension()) {
if (isPathExtensionNoEquals()) {
- sampler.setPath(sampler.getPath() + ";" + getArgumentName() + value);
+ sampler.setPath(sampler.getPath() + SEMI_COLON + getArgumentName() + value); // $NON-NLS-1$
} else {
- sampler.setPath(sampler.getPath() + ";" + getArgumentName() + "=" + value);
+ sampler.setPath(sampler.getPath() + SEMI_COLON + getArgumentName() + "=" + value); // $NON-NLS-1$ // $NON-NLS-2$
}
} else {
sampler.getArguments().removeArgument(getArgumentName());
@@ -136,26 +151,36 @@
private void initRegex(String argName) {
pathExtensionEqualsQuestionmarkRegexp = JMeterUtils.getPatternCache().getPattern(
- ";" + argName + "=([^\"'>&\\s;]*)[&\\s\"'>;]?$?",
+ SEMI_COLON + argName + "=([^\"'>&\\s;]*)[&\\s\"'>;]?$?", // $NON-NLS-1$
Perl5Compiler.MULTILINE_MASK | Perl5Compiler.READ_ONLY_MASK);
pathExtensionEqualsNoQuestionmarkRegexp = JMeterUtils.getPatternCache().getPattern(
- ";" + argName + "=([^\"'>&\\s;?]*)[&\\s\"'>;?]?$?",
+ SEMI_COLON + argName + "=([^\"'>&\\s;?]*)[&\\s\"'>;?]?$?", // $NON-NLS-1$
Perl5Compiler.MULTILINE_MASK | Perl5Compiler.READ_ONLY_MASK);
pathExtensionNoEqualsQuestionmarkRegexp = JMeterUtils.getPatternCache().getPattern(
- ";" + argName + "([^\"'>&\\s;]*)[&\\s\"'>;]?$?",
+ SEMI_COLON + argName + "([^\"'>&\\s;]*)[&\\s\"'>;]?$?", // $NON-NLS-1$
Perl5Compiler.MULTILINE_MASK | Perl5Compiler.READ_ONLY_MASK);
pathExtensionNoEqualsNoQuestionmarkRegexp = JMeterUtils.getPatternCache().getPattern(
- ";" + argName + "([^\"'>&\\s;?]*)[&\\s\"'>;?]?$?",
+ SEMI_COLON + argName + "([^\"'>&\\s;?]*)[&\\s\"'>;?]?$?", // $NON-NLS-1$
Perl5Compiler.MULTILINE_MASK | Perl5Compiler.READ_ONLY_MASK);
parameterRegexp = JMeterUtils.getPatternCache().getPattern(
- "[;\\?&]" + argName + "=([^\"'>&\\s;]*)[&\\s\"'>;]?$?" + "|\\s[Nn][Aa][Mm][Ee]\\s*=\\s*[\"']" + argName
- + "[\"']" + "[^>]*" + "\\s[vV][Aa][Ll][Uu][Ee]\\s*=\\s*[\"']" + "([^\"']*)" + "[\"']"
- + "|\\s[vV][Aa][Ll][Uu][Ee]\\s*=\\s*[\"']" + "([^\"']*)" + "[\"']" + "[^>]*"
- + "\\s[Nn][Aa][Mm][Ee]\\s*=\\s*[\"']" + argName + "[\"']",
+ // ;sessionid=value
+ "[;\\?&]" + argName + "=([^\"'>&\\s;]*)[&\\s\"'>;]?$?" + // $NON-NLS-1$
+
+ // name="sessionid" value="value"
+ "|\\s[Nn][Aa][Mm][Ee]\\s*=\\s*[\"']" + argName
+ + "[\"']" + "[^>]*" // $NON-NLS-1$
+ + "\\s[vV][Aa][Ll][Uu][Ee]\\s*=\\s*[\"']" // $NON-NLS-1$
+ + "([^\"']*)" + "[\"']" // $NON-NLS-1$
+
+ // value="value" name="sessionid"
+ + "|\\s[vV][Aa][Ll][Uu][Ee]\\s*=\\s*[\"']" // $NON-NLS-1$
+ + "([^\"']*)" + "[\"']" + "[^>]*" // $NON-NLS-1$ // $NON-NLS-2$ // $NON-NLS-3$
+ + "\\s[Nn][Aa][Mm][Ee]\\s*=\\s*[\"']" // $NON-NLS-1$
+ + argName + "[\"']", // $NON-NLS-1$
Perl5Compiler.MULTILINE_MASK | Perl5Compiler.READ_ONLY_MASK);
// NOTE: the handling of simple- vs. double-quotes could be formally
// more accurate, but I can't imagine a session id containing
@@ -179,6 +204,10 @@
setProperty(new BooleanProperty(PATH_EXTENSION_NO_QUESTIONMARK, pathExtNoQuestionmark));
}
+ public void setShouldCache(boolean b) {
+ setProperty(new BooleanProperty(SHOULD_CACHE, b));
+ }
+
public boolean isPathExtension() {
return getPropertyAsBoolean(PATH_EXTENSION);
}
@@ -190,4 +219,10 @@
public boolean isPathExtensionNoQuestionmark() {
return getPropertyAsBoolean(PATH_EXTENSION_NO_QUESTIONMARK);
}
+
+ public boolean shouldCache() {
+ return getPropertyAsBoolean(SHOULD_CACHE,true);
+ }
+
+
}
Modified: jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/gui/URLRewritingModifierGui.java
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/gui/URLRewritingModifierGui.java?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/gui/URLRewritingModifierGui.java (original)
+++ jakarta/jmeter/branches/rel-2-1/src/protocol/http/org/apache/jmeter/protocol/http/modifier/gui/URLRewritingModifierGui.java Wed Apr 26 17:09:06 2006
@@ -33,13 +33,15 @@
* @version $Revision$ last updated $Date$
*/
public class URLRewritingModifierGui extends AbstractPreProcessorGui {
- JLabeledTextField argumentName;
+ private JLabeledTextField argumentName;
- JCheckBox pathExt;
+ private JCheckBox pathExt;
- JCheckBox pathExtNoEquals;
+ private JCheckBox pathExtNoEquals;
- JCheckBox pathExtNoQuestionmark;
+ private JCheckBox pathExtNoQuestionmark;
+
+ private JCheckBox shouldCache;
public String getLabelResource() {
return "http_url_rewriting_modifier_title";
@@ -57,18 +59,22 @@
VerticalPanel mainPanel = new VerticalPanel();
- argumentName = new JLabeledTextField(JMeterUtils.getResString("session_argument_name"), 10);
+ argumentName = new JLabeledTextField(JMeterUtils.getResString("session_argument_name"), 10); // $NON-NLS-1$
mainPanel.add(argumentName);
- pathExt = new JCheckBox(JMeterUtils.getResString("Path_Extension_choice"));
+ pathExt = new JCheckBox(JMeterUtils.getResString("path_extension_choice")); // $NON-NLS-1$
mainPanel.add(pathExt);
- pathExtNoEquals = new JCheckBox(JMeterUtils.getResString("path_extension_dont_use_equals"));
+ pathExtNoEquals = new JCheckBox(JMeterUtils.getResString("path_extension_dont_use_equals")); // $NON-NLS-1$
mainPanel.add(pathExtNoEquals);
- pathExtNoQuestionmark = new JCheckBox(JMeterUtils.getResString("path_extension_dont_use_questionmark"));
+ pathExtNoQuestionmark = new JCheckBox(JMeterUtils.getResString("path_extension_dont_use_questionmark")); // $NON-NLS-1$
mainPanel.add(pathExtNoQuestionmark);
+ shouldCache = new JCheckBox(JMeterUtils.getResString("cache_session_id")); // $NON-NLS-1$
+ shouldCache.setSelected(true);
+ mainPanel.add(shouldCache);
+
add(mainPanel, BorderLayout.CENTER);
}
@@ -90,17 +96,21 @@
*/
public void modifyTestElement(TestElement modifier) {
this.configureTestElement(modifier);
- ((URLRewritingModifier) modifier).setArgumentName(argumentName.getText());
- ((URLRewritingModifier) modifier).setPathExtension(pathExt.isSelected());
- ((URLRewritingModifier) modifier).setPathExtensionNoEquals(pathExtNoEquals.isSelected());
- ((URLRewritingModifier) modifier).setPathExtensionNoQuestionmark(pathExtNoQuestionmark.isSelected());
+ URLRewritingModifier rewritingModifier = ((URLRewritingModifier) modifier);
+ rewritingModifier.setArgumentName(argumentName.getText());
+ rewritingModifier.setPathExtension(pathExt.isSelected());
+ rewritingModifier.setPathExtensionNoEquals(pathExtNoEquals.isSelected());
+ rewritingModifier.setPathExtensionNoQuestionmark(pathExtNoQuestionmark.isSelected());
+ rewritingModifier.setShouldCache((shouldCache.isSelected()));
}
public void configure(TestElement el) {
- argumentName.setText(((URLRewritingModifier) el).getArgumentName());
- pathExt.setSelected(((URLRewritingModifier) el).isPathExtension());
- pathExtNoEquals.setSelected(((URLRewritingModifier) el).isPathExtensionNoEquals());
- pathExtNoQuestionmark.setSelected(((URLRewritingModifier) el).isPathExtensionNoQuestionmark());
+ URLRewritingModifier rewritingModifier = ((URLRewritingModifier) el);
+ argumentName.setText(rewritingModifier.getArgumentName());
+ pathExt.setSelected(rewritingModifier.isPathExtension());
+ pathExtNoEquals.setSelected(rewritingModifier.isPathExtensionNoEquals());
+ pathExtNoQuestionmark.setSelected(rewritingModifier.isPathExtensionNoQuestionmark());
+ shouldCache.setSelected(rewritingModifier.shouldCache());
super.configure(el);
}
Modified: jakarta/jmeter/branches/rel-2-1/test/src/org/apache/jmeter/protocol/http/modifier/TestURLRewritingModifier.java
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/test/src/org/apache/jmeter/protocol/http/modifier/TestURLRewritingModifier.java?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/test/src/org/apache/jmeter/protocol/http/modifier/TestURLRewritingModifier.java (original)
+++ jakarta/jmeter/branches/rel-2-1/test/src/org/apache/jmeter/protocol/http/modifier/TestURLRewritingModifier.java Wed Apr 26 17:09:06 2006
@@ -17,10 +17,9 @@
package org.apache.jmeter.protocol.http.modifier;
-import junit.framework.TestCase;
-
import org.apache.jmeter.config.Argument;
import org.apache.jmeter.config.Arguments;
+import org.apache.jmeter.junit.JMeterTestCase;
import org.apache.jmeter.protocol.http.sampler.HTTPNullSampler;
import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase;
import org.apache.jmeter.samplers.NullSampler;
@@ -28,8 +27,9 @@
import org.apache.jmeter.samplers.Sampler;
import org.apache.jmeter.threads.JMeterContext;
import org.apache.jmeter.threads.JMeterContextService;
+import org.apache.jmeter.util.JMeterUtils;
-public class TestURLRewritingModifier extends TestCase {
+public class TestURLRewritingModifier extends JMeterTestCase {
private SampleResult response = null;
private JMeterContext context = null;
@@ -134,13 +134,17 @@
}
public void testGrabSessionIdFromForm() throws Exception {
- String[] html = new String[] { "<input name=\"sid\" value=\"myId\">", "<input name='sid' value='myId'>",
- "<input value=\"myId\" NAME='sid'>", "<input VALUE='myId' name=\"sid\">",
- "<input blah blah value=\"myId\" yoda yoda NAME='sid'>", };
+ String[] html = new String[] {
+ "<input name=\"sid\" value=\"myId\">",
+ "<input name='sid' value='myId'>",
+ "<input value=\"myId\" NAME='sid'>",
+ "<input VALUE='myId' name=\"sid\">",
+ "<input blah blah value=\"myId\" yoda yoda NAME='sid'>",
+ };
for (int i = 0; i < html.length; i++) {
response = new SampleResult();
response.setResponseData(html[i].getBytes());
- URLRewritingModifier newMod = new URLRewritingModifier();
+ URLRewritingModifier newMod = new URLRewritingModifier();
newMod.setThreadContext(context);
newMod.setArgumentName("sid");
newMod.setPathExtension(false);
@@ -149,8 +153,53 @@
context.setPreviousResult(response);
newMod.process();
Arguments args = sampler.getArguments();
- assertEquals("For case i=" + i, "myId", ((Argument) args.getArguments().get(0).getObjectValue())
- .getValue());
+ assertEquals("For case i=" + i, "myId",
+ ((Argument) args.getArguments().get(0).getObjectValue()).getValue());
}
}
+
+ public void testCache() throws Exception {
+ String[] html = new String[] {
+ "<input name=\"sid\" value=\"myId\">",
+ "<html></html>", // No entry; check it is still present
+ };
+ URLRewritingModifier newMod = new URLRewritingModifier();
+ newMod.setShouldCache(true);
+ newMod.setThreadContext(context);
+ newMod.setArgumentName("sid");
+ newMod.setPathExtension(false);
+ for (int i = 0; i < html.length; i++) {
+ response = new SampleResult();
+ response.setResponseData(html[i].getBytes());
+ HTTPSamplerBase sampler = createSampler();
+ context.setCurrentSampler(sampler);
+ context.setPreviousResult(response);
+ newMod.process();
+ Arguments args = sampler.getArguments();
+ assertEquals("For case i=" + i, "myId",
+ ((Argument) args.getArguments().get(0).getObjectValue()).getValue());
+ }
+ }
+ public void testNoCache() throws Exception {
+ String[] html = new String[] {
+ "<input name=\"sid\" value=\"myId\">", "myId",
+ "<html></html>", "",
+ };
+ URLRewritingModifier newMod = new URLRewritingModifier();
+ newMod.setThreadContext(context);
+ newMod.setArgumentName("sid");
+ newMod.setPathExtension(false);
+ newMod.setShouldCache(false);
+ for (int i = 0; i < html.length/2; i++) {
+ response = new SampleResult();
+ response.setResponseData(html[i*2].getBytes());
+ HTTPSamplerBase sampler = createSampler();
+ context.setCurrentSampler(sampler);
+ context.setPreviousResult(response);
+ newMod.process();
+ Arguments args = sampler.getArguments();
+ assertEquals("For case i=" + i, html[i*2+1],
+ ((Argument) args.getArguments().get(0).getObjectValue()).getValue());
+ }
+ }
}
Modified: jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml (original)
+++ jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml Wed Apr 26 17:09:06 2006
@@ -83,6 +83,7 @@
<li>New -S option to define system properties from input file</li>
<li>Bug 26136 - allow configuration of local address</li>
<li>Expand tree by default when loading a test plan - can be disabled by setting property onload.expandtree=false</li>
+<li>Bug 11843 - URL Rewriter can now cache the session id</li>
</ul>
<h4>Bug fixes:</h4>
Added: jakarta/jmeter/branches/rel-2-1/xdocs/images/screenshots/url_rewrite_example_b.png
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/images/screenshots/url_rewrite_example_b.png?rev=397346&view=auto
==============================================================================
Binary file - no diff available.
Propchange: jakarta/jmeter/branches/rel-2-1/xdocs/images/screenshots/url_rewrite_example_b.png
------------------------------------------------------------------------------
svn:mime-type = image/png
Modified: jakarta/jmeter/branches/rel-2-1/xdocs/images/screenshots/url_rewriter.png
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/images/screenshots/url_rewriter.png?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/build-adv-web-test-plan.xml
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/build-adv-web-test-plan.xml?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/build-adv-web-test-plan.xml (original)
+++ jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/build-adv-web-test-plan.xml Wed Apr 26 17:09:06 2006
@@ -37,7 +37,10 @@
<p>To respond correctly to URL rewriting, JMeter needs to parse the HTML
received from the server and retrieve the unique session ID. Use the appropriate <complink name="HTTP URL Re-writing Modifier"/>
to accomplish this. Simply enter the name of your session ID parameter into the modifier, and it
-will find it and add it to each request. If the request already has a value, it will be replaced.</p>
+will find it and add it to each request. If the request already has a value, it will be replaced.
+If "Cache Session Id?" is checked, then the last found session id will be saved,
+and will be used if the previous HTTP sample does not contain a session id.
+</p>
<example title="URL Rewriting Example">
<p>Download <a href="../demos/URLRewritingExample.jmx">this example</a>. In Figure 1 is shown a
@@ -47,7 +50,7 @@
<p>In Figure 2, we see the URL Re-writing modifier GUI, which just has a field for the user to specify
the name of the session ID parameter. There is also a checkbox for indicating that the session ID should
be part of the path (separated by a ";"), rather than a request parameter</p>
-<figure image="url_rewrite_example_b.gif">Figure 2 - Request parameters</figure>
+<figure image="url_rewrite_example_b.png">Figure 2 - Request parameters</figure>
</example>
</section>
Modified: jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml?rev=397346&r1=397345&r2=397346&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml (original)
+++ jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml Wed Apr 26 17:09:06 2006
@@ -2566,6 +2566,9 @@
a semi-colon plus the session id parameter. Check this box if that is so.</property>
<property name="Do not use equals in path extension" required="No">Some web apps rewrite URLs without using an "=" sign between the parameter name and value (such as Intershop Enfinity).</property>
<property name="Do not use questionmark in path extension" required="No">Prevents the query string to end up in the path extension (such as Intershop Enfinity).</property>
+ <property name="Cache Session Id?" required="Yes">
+ Should the value of the session Id be saved for later use when the session Id is not present?
+ </property>
</properties>
</component>
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org