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 2002/06/18 03:01:16 UTC

cvs commit: jakarta-jmeter/xdocs/usermanual build-adv-web-test-plan.xml build-test-plan.xml build-web-test-plan.xml get-started.xml index.xml remote-test.xml test_plan.xml

mstover1    2002/06/17 18:01:15

  Modified:    .        build.xml
               docs     running.html
               docs/images/screenshots graph_results.gif proxy_control.gif
                        spline_visualizer.gif view_result_tree.gif
               docs/images/screenshots/assertion assertion.gif
               docs/usermanual build-adv-web-test-plan.html
                        build-test-plan.html build-web-test-plan.html
                        get-started.html index.html remote-test.html
                        test_plan.html
               src_1/org/apache/jmeter/assertions/gui AssertionGui.java
               src_1/org/apache/jmeter/config Arguments.java
               src_1/org/apache/jmeter/protocol/http/config/gui
                        UrlConfigGui.java
               src_1/org/apache/jmeter/protocol/http/modifier
                        URLRewritingModifier.java
               src_1/org/apache/jmeter/protocol/http/sampler
                        HTTPSampler.java HTTPSamplerFull.java
                        MultipartFormSampler.java
                        MultipartFormSamplerFull.java
               src_1/org/apache/jmeter/resources messages.properties
                        messages_ja.properties messages_no.properties
               src_1/org/apache/jmeter/visualizers GraphVisualizer.java
                        StatVisualizerModel.java
               xdocs/usermanual build-adv-web-test-plan.xml
                        build-test-plan.xml build-web-test-plan.xml
                        get-started.xml index.xml remote-test.xml
                        test_plan.xml
  Added:       docs/images/screenshots aggregate_report.gif
                        html_param_mask.gif java_request.gif
                        table_results.gif test_plan.gif url_rewriter.gif
                        user_param_modifier.gif
  Log:
  Documentation updates, redirect flag added to HTTPSampler, small gui improvements
  
  Revision  Changes    Path
  1.58      +1 -1      jakarta-jmeter/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/build.xml,v
  retrieving revision 1.57
  retrieving revision 1.58
  diff -u -r1.57 -r1.58
  --- build.xml	13 Jun 2002 00:45:14 -0000	1.57
  +++ build.xml	18 Jun 2002 01:01:11 -0000	1.58
  @@ -6,7 +6,7 @@
     <property name="sources.src.dir" value="src_1"/>
     <!-- Where the API documentation lives -->
     <property name="docs.api.dest.dir" value="docs/api"/>
  -  <property name="version" value="1.7"/>
  +  <property name="version" value="1.7.1"/>
     <property name="docs.src" value="./xdocs"/>
     <property name="docs.dest" value="./docs"/>
     <property name="printable_docs.dest" value="./printable_docs"/>
  
  
  
  1.43      +0 -0      jakarta-jmeter/docs/running.html
  
  Index: running.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/running.html,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  
  
  
  1.2       +23 -17    jakarta-jmeter/docs/images/screenshots/graph_results.gif
  
  	<<Binary file>>
  
  
  1.2       +18 -32    jakarta-jmeter/docs/images/screenshots/proxy_control.gif
  
  	<<Binary file>>
  
  
  1.2       +13 -17    jakarta-jmeter/docs/images/screenshots/spline_visualizer.gif
  
  	<<Binary file>>
  
  
  1.3       +27 -13    jakarta-jmeter/docs/images/screenshots/view_result_tree.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/docs/images/screenshots/aggregate_report.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/docs/images/screenshots/html_param_mask.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/docs/images/screenshots/java_request.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/docs/images/screenshots/table_results.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/docs/images/screenshots/test_plan.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/docs/images/screenshots/url_rewriter.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/docs/images/screenshots/user_param_modifier.gif
  
  	<<Binary file>>
  
  
  1.2       +19 -18    jakarta-jmeter/docs/images/screenshots/assertion/assertion.gif
  
  	<<Binary file>>
  
  
  1.12      +11 -56    jakarta-jmeter/docs/usermanual/build-adv-web-test-plan.html
  
  Index: build-adv-web-test-plan.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/usermanual/build-adv-web-test-plan.html,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- build-adv-web-test-plan.html	7 Mar 2002 23:03:12 -0000	1.11
  +++ build-adv-web-test-plan.html	18 Jun 2002 01:01:12 -0000	1.12
  @@ -82,23 +82,6 @@
   									 to test a Web site.
   						</p>
   							  									 				<p	>
  -								
  -
  -												<ul	>
  -								
  -
  -												<li	>
  -												<a	 href="#session_url_rewriting">
  -								6.1 Handling User Sessions With URL Rewriting
  -						</a>
  -							</li>
  -									
  -
  -						</ul>
  -									
  -
  -						</p>
  -							  									 				<p	>
   								For an example of a basic Test Plan, see
   
   												<a	 href="build-web-test-plan.html">
  @@ -125,15 +108,11 @@
   						</p>
   							  									 				<p	>
   								To respond correctly to URL rewriting, JMeter needs to parse the HTML
  -received from the server and retrieve the unique session ID.  To do this, put
  -all your requests inside a 
  -												<a href="../usermanual/component_reference.html#Modification_Manager">Modification Manager</a>
  -									, with an 
  -												<a href="../usermanual/component_reference.html#HTML_Link_Parser">HTML Link Parser</a>
  -									 attached.  Then, include the session ID as an additional parameter
  -with each 
  -												<a href="../usermanual/component_reference.html#HTTP_Request">HTTP Request</a>
  -									, with ".*" as the value.
  +received from the server and retrieve the unique session ID.  Use the appropriate 
  +												<a href="../usermanual/component_reference.html#URL_Rewriting_Modifier">URL Rewriting Modifier</a>
  +									
  +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>
   							  									 				<a name="$example.getAttributeValue("anchor")"/>
   	<p><b>URL Rewriting Example</b></p>
  @@ -144,45 +123,21 @@
   												<a	 href="../demos/URLRewritingExample.jmx">
   								this example
   						</a>
  -									. In Figure 1 is shown a test plan using URL rewriting.  Note that all HTTP Requests are
  -contained within the 
  -												<a href="../usermanual/component_reference.html#Modification_Manager">Modification Manager</a>
  -									. The 
  -												<a href="../usermanual/component_reference.html#Modification_Manager">Modification Manager</a>
  -									
  -also has an 
  -												<a href="../usermanual/component_reference.html#HTML_Link_Parser">HTML Link Parser</a>
  -									 attached to it.
  +									. In Figure 1 is shown a 
  +test plan using URL rewriting.  Note that the URL Re-writing modifier is attached to the ThreadGroup,
  +thus assuring that it will affect every request in that ThreadGroup.
   						</p>
   									
   
  -												<p><table border="1" bgcolor="#bbbb00" width="50%" cellspacing="0" cellpadding="2">
  -		<tr><td>						It would be possible to use other 
  -												<a	 href="component_reference.html#logic_controllers">
  -								Logic
  -Controllers
  -						</a>
  -									 within the
  -
  -												<a href="../usermanual/component_reference.html#Modification_Manager">Modification Manager</a>
  -									 without affecting the Modification Manager.
  -			</td></tr>
  -	</table></p>
  -									
  -
   												<p><table border="0" cellspacing="0" cellpadding="0"><tr><td><img src="../images/screenshots/url_rewrite_example_a.gif"><br/>
   	<font size="-1">						Figure 1 - Test Tree
   			</font></td></tr></table></p>
   									
   
   												<p	>
  -								In Figure 2, we see the "Send Parameters with Request" section of one of the
  -
  -												<a href="../usermanual/component_reference.html#HTTP_Request">HTTP Request</a>
  -									 objects.  It shows, in addition to the login
  -information, the SESSION_ID parameter, with a value of ".*", which is a regular expression
  -that will match any string.  Your application will have its own unique name for
  -this parameter, which you will have to put in place of "SESSION_ID".
  +								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>
   									
   
  
  
  
  1.12      +4 -3      jakarta-jmeter/docs/usermanual/build-test-plan.html
  
  Index: build-test-plan.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/usermanual/build-test-plan.html,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- build-test-plan.html	13 Jun 2002 00:45:15 -0000	1.11
  +++ build-test-plan.html	18 Jun 2002 01:01:12 -0000	1.12
  @@ -139,9 +139,10 @@
   controls allow you to configure the behavior of that particular test element.  What can be
   configured for an element depends on what type of element it is.
   						</p>
  -							  									 				<p	>
  -								The Test Tree itself can be manipulated by dragging and dropping components around the test tree.
  -						</p>
  +							  									 				<p><table border="1" bgcolor="#bbbb00" width="50%" cellspacing="0" cellpadding="2">
  +		<tr><td>						The Test Tree itself can be manipulated by dragging and dropping components around the test tree.
  +			</td></tr>
  +	</table></p>
   							  		  </blockquote>
   		</td></tr>
   		<tr><td><br/></td></tr>
  
  
  
  1.18      +13 -28    jakarta-jmeter/docs/usermanual/build-web-test-plan.html
  
  Index: build-web-test-plan.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/usermanual/build-web-test-plan.html,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- build-web-test-plan.html	15 Jun 2002 02:44:38 -0000	1.17
  +++ build-web-test-plan.html	18 Jun 2002 01:01:12 -0000	1.18
  @@ -344,7 +344,7 @@
   			</font></td></tr></table></p>
   							  									 				<p	>
   								Next, add the second HTTP Request and edit the following properties (see
  -Figure 5.56:
  +Figure 5.6:
   
   												<ol	>
   								
  @@ -398,9 +398,9 @@
   output file.  You can either type it into the filename field, or select the
   Browse button and browse to a directory and then enter a filename.
   						</p>
  -							  									 				<p><table border="0" cellspacing="0" cellpadding="0"><tr><td><img src="../images/screenshots/webtest/file-reporter.gif"><br/>
  +							  									 				<p><table border="0" cellspacing="0" cellpadding="0"><tr><td><img src="../images/screenshots/graph_results.gif"><br/>
   	<font size="-1">						
  -Figure 5.7. File Reporter Listener
  +Figure 5.7. Graph Results Listener
   			</font></td></tr></table></p>
   							  		  </blockquote>
   		  </p>
  @@ -447,17 +447,12 @@
   		<tr><td>
   		  <blockquote>
   		  									 				<p	>
  -								Before running the Test Plan, You have to manually open the File Reporter
  -output file. Select the File Reporter tree element, and select the Open button,
  -which is located at the bottom of the Control Panel.
  -						</p>
  -							  									 				<p	>
   								From the Run menu, select Run.
   						</p>
   							  									 				<p><table border="1" bgcolor="#bbbb00" width="50%" cellspacing="0" cellpadding="2">
  -		<tr><td>						The current version of JMeter does not let you know
  -when it has finished running your Test Plan.  You have to determine this
  -by viewing the console output or the File Reporter output file.
  +		<tr><td>						JMeter lights up a green square in the upper-right-hand corner to indicate if a test is
  +currently running.  The square is turned gray when all tests stop.  Even after you select "stop",
  +the green light will stay on until all test threads have exited.
   			</td></tr>
   	</table></p>
   							  									 				<p	>
  @@ -465,24 +460,14 @@
   Run menu.
   						</p>
   							  									 				<p	>
  -								Next, you need to close the File Reporter output file.  Select
  -the File Reporter tree element, and select the Close button on the
  -Control Panel.
  -						</p>
  -							  									 				<p	>
  -								To view the results, open the File Reporter output file in a text
  -editor (see Figure 5.8). The format is [URL][space][Response time in milliseconds].
  -						</p>
  -							  									 				<p	>
  -								Alternatively, you can use the 
  -												<a href="../usermanual/component_reference.html#Data_Analyzer">Data Analyzer</a>
  -									 for a graphical
  -view of the data.
  +								If you selected a file to save the results to in your listener, then you will have a file that can be
  +opened in any visualizer.  Each visualizer will display the results in it's own fashion.
   						</p>
  -							  									 				<p><table border="0" cellspacing="0" cellpadding="0"><tr><td><img src="../images/screenshots/webtest/file-reporter-results.gif"><br/>
  -	<font size="-1">						
  -Figure 5.8. Test Plan Results
  -			</font></td></tr></table></p>
  +							  									 				<p><table border="1" bgcolor="#bbbb00" width="50%" cellspacing="0" cellpadding="2">
  +		<tr><td>						It is possible to have the same file open in more than one visualizer.  This is not a problem.  JMeter
  +will ensure during the test run that no sample is recorded to the same file more than once.
  +			</td></tr>
  +	</table></p>
   							  		  </blockquote>
   		  </p>
   		</td></tr>
  
  
  
  1.15      +9 -0      jakarta-jmeter/docs/usermanual/get-started.html
  
  Index: get-started.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/usermanual/get-started.html,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- get-started.html	13 Jun 2002 00:45:15 -0000	1.14
  +++ get-started.html	18 Jun 2002 01:01:12 -0000	1.15
  @@ -573,6 +573,15 @@
   								</td>
   		</tr>
   			<tr>
  +			<td>xml.parser</td>
  +			<td>						You can specify an implementation as your XML
  +	parser.  The default value is: org.apache.xerces.parsers.SAXParser
  +			</td>
  +			<td>
  +											No
  +								</td>
  +		</tr>
  +			<tr>
   			<td>user.dir</td>
   			<td>						The directory JMeter will first go to for saving and
   	loading test scripts.
  
  
  
  1.20      +12 -1     jakarta-jmeter/docs/usermanual/index.html
  
  Index: index.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/usermanual/index.html,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- index.html	13 Jun 2002 00:45:15 -0000	1.19
  +++ index.html	18 Jun 2002 01:01:12 -0000	1.20
  @@ -73,7 +73,11 @@
   		</td></tr>
   		<tr><td>
   		  <blockquote>
  -		  									 				<ul	>
  +		  									 				<p><table border="1" bgcolor="#bbbb00" width="50%" cellspacing="0" cellpadding="2">
  +		<tr><td>						JMeter's documentation is being updated.  Some parts are out-of-date.  Sorry for any inconvenience.
  +			</td></tr>
  +	</table></p>
  +							  									 				<ul	>
   								
     
   												<li	>
  @@ -526,6 +530,13 @@
   												<li	>
   												<a	 href="best-practices.html#put_auth_manager">
   								11.3 [HTTP] Where to Put the Authorization Manager
  +						</a>
  +							</li>
  +									
  +	 
  +												<li	>
  +												<a	 href="best-practices.html#proxy_server">
  +								11.4 Using the Proxy Server to record test scripts
   						</a>
   							</li>
   									
  
  
  
  1.13      +1 -1      jakarta-jmeter/docs/usermanual/remote-test.html
  
  Index: remote-test.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/usermanual/remote-test.html,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- remote-test.html	13 Jun 2002 00:45:15 -0000	1.12
  +++ remote-test.html	18 Jun 2002 01:01:13 -0000	1.13
  @@ -158,7 +158,7 @@
   						</b>
   							</p>
   							  									 				<p	>
  -								Now you are ready to start the JMeter client. For MS-Windows, start the client with the script "bin/jmeter.bat".  For UNIX, 
  +								Now you are ready to start the controlling JMeter client. For MS-Windows, start the client with the script "bin/jmeter.bat".  For UNIX, 
   use the script "bin/jmeter".  You will notice that the Run menu contains two new sub-menus: "Remote Start" and "Remote Stop" 
   (see figure 1). These menus contain the client that you set in the properties file.  Use the remote start and stop instead of the 
   normal JMeter start and stop menu items.
  
  
  
  1.8       +14 -2     jakarta-jmeter/docs/usermanual/test_plan.html
  
  Index: test_plan.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/usermanual/test_plan.html,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- test_plan.html	13 Jun 2002 00:45:15 -0000	1.7
  +++ test_plan.html	18 Jun 2002 01:01:13 -0000	1.8
  @@ -73,7 +73,19 @@
   		</td></tr>
   		<tr><td>
   		  <blockquote>
  -		  									 			 	 <table border="0" cellspacing="0" cellpadding="2" width="100%">
  +		  									 				<p	>
  +								The Test Plan object has a new checkbox to select called "Functional Testing".  If selected, it
  +will cause JMeter to record the data returned from the server for each sample.  If you have 
  +selected a file in your test listeners, this data will be written to file.  This can be useful if
  +you are doing a small run to ensure that JMeter is configured correctly, and that your server
  +is returning the expected results.  The consequence is that the file will grow huge quickly, and
  +JMeter's performance will suffer.  This option should be off if you are doing stress-testing (it
  +is off by default).  
  +						</p>
  +							  									 				<p	>
  +								If you are not recording the data to file, this option makes no difference.
  +						</p>
  +							  									 			 	 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#828DA6">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
   			 <a name="thread_group"><strong>4.1 ThreadGroup</strong></a>
  @@ -135,7 +147,7 @@
   		<tr><td>
   		  <blockquote>
   		  									 				<p	>
  -								 JMeter has two types of Controllers: Generative and Logical.
  +								 JMeter has two types of Controllers: Samplers and Logical Controllers.
   						</p>
   							  									 				<p	>
   								Samplers tell JMeter to send requests to a server. For
  
  
  
  1.8       +11 -11    jakarta-jmeter/src_1/org/apache/jmeter/assertions/gui/AssertionGui.java
  
  Index: AssertionGui.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/assertions/gui/AssertionGui.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- AssertionGui.java	14 Jun 2002 22:45:16 -0000	1.7
  +++ AssertionGui.java	18 Jun 2002 01:01:13 -0000	1.8
  @@ -218,7 +218,7 @@
   		// MAIN PANEL
   		JPanel mainPanel = new JPanel();
   		add(mainPanel,gbc.clone());
  -		gbc.fill = gbc.NONE;
  +		//gbc.fill = gbc.NONE;
   		gbc.weighty = 0;
   		mainPanel.setLayout(new GridBagLayout());
   		Border margin = new EmptyBorder(10, 10, 5, 10);
  @@ -236,16 +236,16 @@
   		// NAME
   		mainPanel.add(getNamePanel(),gbc.clone());
   		gbc.gridx++;
  -		gbc.fill = gbc.HORIZONTAL;
  +		//gbc.fill = gbc.HORIZONTAL;
   		mainPanel.add(Box.createHorizontalGlue(),gbc.clone());
   		gbc.gridx--;
  -		gbc.fill = gbc.NONE;
  +		//gbc.fill = gbc.NONE;
   		gbc.gridy++;
   		mainPanel.add(createFieldPanel(),gbc.clone());
   		gbc.gridy++;
   		mainPanel.add(createTypePanel(),gbc.clone());
   		gbc.gridy++;
  -		gbc.fill = gbc.BOTH;
  +		//gbc.fill = gbc.BOTH;
   		gbc.weighty = 1;
   		gbc.gridwidth = 2;
   		mainPanel.add(createStringPanel(),gbc.clone());
  
  
  
  1.3       +14 -1     jakarta-jmeter/src_1/org/apache/jmeter/config/Arguments.java
  
  Index: Arguments.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/config/Arguments.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Arguments.java	29 Apr 2002 17:08:06 -0000	1.2
  +++ Arguments.java	18 Jun 2002 01:01:13 -0000	1.3
  @@ -158,6 +158,19 @@
   	{
   		getArguments().remove(arg);
   	}
  +	
  +	public void removeArgument(String argName)
  +	{
  +		Iterator iter = getArguments().iterator();
  +		while(iter.hasNext())
  +		{
  +			Argument arg = (Argument)iter.next();
  +			if(arg.getName().equals(argName))
  +			{
  +				removeArgument(arg);
  +			}
  +		}
  +	}
   
   	/****************************************
   	 * !ToDo (Method description)
  
  
  
  1.8       +13 -1     jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/config/gui/UrlConfigGui.java
  
  Index: UrlConfigGui.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/config/gui/UrlConfigGui.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- UrlConfigGui.java	1 Jun 2002 13:21:27 -0000	1.7
  +++ UrlConfigGui.java	18 Jun 2002 01:01:13 -0000	1.8
  @@ -91,6 +91,7 @@
   	private static String DOMAIN = "domain";
   	private static String PORT = "port";
   	private static String PATH = "path";
  +	private static String FOLLOW_REDIRECTS = "follow_redirects";
   	private static String POST = "post";
   	private static String GET = "get";
   	private static String HTTP = "http";
  @@ -100,6 +101,7 @@
   	private JTextField domain;
   	private JTextField port;
   	private JTextField path;
  +	private JCheckBox followRedirects;
   	private JRadioButton post;
   	private JRadioButton get;
   	private JRadioButton http;
  @@ -150,6 +152,7 @@
   		element.setProperty(HTTPSampler.PORT, port.getText());
   		element.setProperty(HTTPSampler.METHOD, (post.isSelected() ? "POST" : "GET"));
   		element.setProperty(HTTPSampler.PATH, path.getText());
  +		element.setProperty(HTTPSampler.FOLLOW_REDIRECTS, new Boolean(followRedirects.isSelected()));
   		element.setProperty(HTTPSampler.PROTOCOL, (http.isSelected() ? "http" : "https"));
   		return element;
   	}
  @@ -159,6 +162,7 @@
   		sampler.setArguments((Arguments)argsPanel.createTestElement());
   		sampler.setDomain(domain.getText());
   		sampler.setPath(path.getText());
  +		sampler.setFollowRedirects(followRedirects.isSelected());
   		if(port.getText().length() > 0)
   		{
   			sampler.setPort(Integer.parseInt(port.getText()));
  @@ -189,6 +193,7 @@
   			post.setSelected(false);
   		}
   		path.setText((String)el.getProperty(HTTPSampler.PATH));
  +		followRedirects.setSelected(((Boolean)el.getProperty(HTTPSampler.FOLLOW_REDIRECTS)).booleanValue());
   		if("http".equals(el.getProperty(HTTPSampler.PROTOCOL)))
   		{
   			http.setSelected(true);
  @@ -306,6 +311,13 @@
   		path = new JTextField(20);
   		path.setName(PATH);
   		panel.add(path);
  +
  +		followRedirects= new JCheckBox(JMeterUtils.getResString("follow_redirects"));
  +		followRedirects.setName(FOLLOW_REDIRECTS);
  +		// Set this by default so as to stay compliant with the old
  +		// behaviour:
  +		followRedirects.setSelected(true);
  +		panel.add(followRedirects);
   
   		return panel;
   	}
  
  
  
  1.2       +1 -0      jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java
  
  Index: URLRewritingModifier.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- URLRewritingModifier.java	29 May 2002 22:41:53 -0000	1.1
  +++ URLRewritingModifier.java	18 Jun 2002 01:01:14 -0000	1.2
  @@ -69,6 +69,7 @@
   		}
   		else
   		{
  +			sampler.getArguments().removeArgument(getArgumentName());
   			sampler.getArguments().addArgument(getArgumentName(),value);
   		}
   	}
  
  
  
  1.14      +52 -26    jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/HTTPSampler.java
  
  Index: HTTPSampler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/HTTPSampler.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- HTTPSampler.java	13 Jun 2002 00:45:17 -0000	1.13
  +++ HTTPSampler.java	18 Jun 2002 01:01:14 -0000	1.14
  @@ -97,6 +97,7 @@
   	public final static String PORT = "HTTPSampler.port";
   	public final static String METHOD = "HTTPSampler.method";
   	public final static String PATH = "HTTPSampler.path";
  +	public final static String FOLLOW_REDIRECTS = "HTTPSampler.follow_redirects";
   	public final static String PROTOCOL = "HTTPSampler.protocol";
   	public final static String URL = "HTTPSampler.URL";
   	public final static String POST = "POST";
  @@ -150,6 +151,16 @@
   		return getPropertyAsString(PATH);
   	}
   
  +	public void setFollowRedirects(boolean value)
  +	{
  +		setProperty(FOLLOW_REDIRECTS, new Boolean(value));
  +	}
  +
  +	public boolean getFollowRedirects()
  +	{
  +		return getPropertyAsBoolean(FOLLOW_REDIRECTS);
  +	}
  +
   	public void setMethod(String value)
   	{
   		setProperty(METHOD,value);
  @@ -303,10 +314,14 @@
   	 ***************************************/
   	public HTTPSampler() {
   		setArguments(new Arguments());
  +
  +		// Make followRedirects be true by default, to stay compatible
  +		// with the old behaviour:
  +		setFollowRedirects(true);
   	}
   
   	/****************************************
  -	 * A convenience method to call <code>sample</code> with no redirection
  +	 * Do a sampling and return its results.
   	 *
   	 *@param e  <code>Entry</code> to be sampled
   	 *@return   results of the sampling
  @@ -365,6 +380,12 @@
   		connection.setRequestProperty("Content-type", "application/x-www-form-urlencoded");
   		connection.setDoOutput(true);
   
  +		// [Jordi <jsalvata@atg.com]
  +		// Note: this is illegal. We've not yet called connection.connect(), so we shouldn't
  +		// be calling getOutputStream for it, according to the docs.
  +		// It seems to work, though...
  +		// [/Jordi]
  +		// Mike: This is the I've seen it done, so I've copied it. Never read no "docs" ;-)
   		PrintWriter out = new PrintWriter(connection.getOutputStream());
   		out.print(postData);
   		out.close();
  @@ -376,8 +397,6 @@
   	 *
   	 *@param u                <code>URL</code> of the URL request
   	 *@param url              <code>UrlConfig</code> of the URL request
  -	 *@param e                <code>Entry</code> from which all other info can be
  -	 *      derived from e.g. cookies, header, authorization
   	 *@return                 <code>HttpURLConnection</code> of the URL request
   	 *@exception IOException  if an I/O Exception occurs
   	 ***************************************/
  @@ -390,6 +409,15 @@
   		{
   			SSLManager.getInstance().setContext(conn);
   		}
  +		// [Jordi <js...@atg.com>]
  +		// I've not been able to find out why we're not using this
  +		// feature of HttpURLConnections and we're doing redirection
  +		// by hand instead. Everything would be so much simpler...
  +		// [/Jordi]
  +		// Mike: answer - it didn't work.  Maybe in JDK1.4 it works, but honestly,
  +		// it doesn't seem like they're working on this.
  +		// My longer term plan is to use Apache's home grown HTTP Client, or
  +		// maybe even HTTPUnit's classes.  I'm sure both would be better than Sun's
   		conn.setFollowRedirects(false);
   		conn.setRequestMethod((String)url.getProperty(HTTPSampler.METHOD));
   		setConnectionHeaders(conn, u, getHeaderManager());
  @@ -399,24 +427,6 @@
   	}
   
   	/****************************************
  -	 * This method will setup <code>HttpURLConnection</code> to handle post using
  -	 * <code>sendPostData</code> method if the URL request is actually a html form
  -	 * that needs to be posted
  -	 *
  -	 *@param redirected       does <code>HttpURLConnection</code> allow redirection
  -	 *@param url              contains query string for POST
  -	 *@param conn             <HttpURLConnection> of the URL request
  -	 *@exception IOException  if
  -	 ***************************************/
  -	protected void writeToStream(boolean redirected, UrlConfig url, HttpURLConnection conn) throws IOException
  -	{
  -		if(!redirected && url.getProperty(HTTPSampler.METHOD).equals(HTTPSampler.POST))
  -		{
  -			sendPostData(conn, url);
  -		}
  -	}
  -
  -	/****************************************
   	 * Reads the response from the URL connection
   	 *
   	 *@param conn             URL from which to read response
  @@ -629,7 +639,7 @@
   	 * Samples <code>Entry</code> passed in and stores the result in <code>SampleResult</code>
   	 *
   	 *@param e           <code>Entry</code> to be sampled
  -	 *@param redirected  whether redirection is turned on
  +	 *@param redirected  whether we're processing a redirect
   	 *@return            results of the sampling
   	 ***************************************/
   	private SampleResult sample(UrlConfig url,boolean redirected)
  @@ -640,6 +650,12 @@
   		if(redirected)
   		{
   			url.removeArguments();
  +			// [Jordi <js...@atg.com>
  +			// TO-DO: I need to investigate why this is necessary.
  +			// ...although it won't do any harm...
  +			// [/Jordi]
  +			// Mike: arguments will be sent otherwise, which is not the way a browser
  +			// behaves.  That's not to say it's perfect as is...
   		}
   		URL u = null;
   		try
  @@ -658,8 +674,18 @@
   				catClass.debug("sample2 : sampling url - " + u);
   			}
   			HttpURLConnection conn = setupConnection(u, url);
  -			writeToStream(redirected, url, conn);
  +			// [Jordi <js...@atg.com>]
  +			// There's some illegality here... see my comment in sendPostData.
  +			// Also, we don't seem to be including the time needed to send the POST
  +			// data in the count... should we? - mike: good point, I changed it
  +			// TO-DO: Is there something I'm missing here?
  +			// [/Jordi]			
   			time = System.currentTimeMillis();
  +			if(!redirected &&
  +			    url.getProperty(HTTPSampler.METHOD).equals(HTTPSampler.POST))
  +			{
  +				sendPostData(conn, url);
  +			}
   			conn.connect();
   			saveConnectionCookies(conn, u, getCookieManager());
   
  @@ -670,7 +696,7 @@
   			}
   			else if(errorLevel/100 == 3)
   			{
  -				if(redirected)
  +				if(redirected || !getFollowRedirects())
   				{
   					time = bundleResponseInResult(time,res,conn);
   				}
  
  
  
  1.9       +1 -2      jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/HTTPSamplerFull.java
  
  Index: HTTPSamplerFull.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/HTTPSamplerFull.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- HTTPSamplerFull.java	17 May 2002 01:29:35 -0000	1.8
  +++ HTTPSamplerFull.java	18 Jun 2002 01:01:14 -0000	1.9
  @@ -126,7 +126,6 @@
   	* <code>SampleResult</code>
   	*
   	* @param entry	an entry to be sampled
  -	* @param redirected  whether redirection is turned on
   	* @return	resuls of the sampling
   	*/
     public SampleResult sample(Entry e)
  
  
  
  1.5       +0 -19     jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/MultipartFormSampler.java
  
  Index: MultipartFormSampler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/MultipartFormSampler.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- MultipartFormSampler.java	29 Apr 2002 17:08:12 -0000	1.4
  +++ MultipartFormSampler.java	18 Jun 2002 01:01:14 -0000	1.5
  @@ -85,25 +85,6 @@
   		super();
   	}
   
  -	/************************************************************
  -	 *  !ToDo (Method description)
  -	 *
  -	 *@param  redirected  !ToDo (Parameter description)
  -	 *@param  url         !ToDo (Parameter description)
  -	 *@param  conn        !ToDo (Parameter description)
  -	 ***********************************************************/
  -	protected void writeToStream(boolean redirected, UrlConfig url, HttpURLConnection conn,
  -						Entry entry) throws IOException
  -	{
  -		if (!redirected && url.getProperty(HTTPSampler.METHOD).equals(HTTPSampler.POST))
  -		{
  -			sendPostData(conn, url);
  -		}
  -		else
  -		{
  -		}
  -	}
  -
   	public Object clone()
   	{
   		MultipartFormSampler newSampler = new MultipartFormSampler();
  
  
  
  1.7       +0 -1      jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/MultipartFormSamplerFull.java
  
  Index: MultipartFormSamplerFull.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/MultipartFormSamplerFull.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- MultipartFormSamplerFull.java	29 Apr 2002 17:08:12 -0000	1.6
  +++ MultipartFormSamplerFull.java	18 Jun 2002 01:01:14 -0000	1.7
  @@ -106,7 +106,6 @@
   	 * <code>SampleResult</code>
   	 *
   	 * @param entry	an entry to be sampled
  -	 * @param redirected  whether redirection is turned on
   	 * @return	resuls of the sampling
   	 */
   	public SampleResult sample(Entry e)
  
  
  
  1.17      +1 -0      jakarta-jmeter/src_1/org/apache/jmeter/resources/messages.properties
  
  Index: messages.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/resources/messages.properties,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- messages.properties	13 Jun 2002 00:45:17 -0000	1.16
  +++ messages.properties	18 Jun 2002 01:01:14 -0000	1.17
  @@ -48,6 +48,7 @@
   domain=Domain
   port=Port:
   path=Path:
  +follow_redirects=Follow Redirects
   method=Method:
   default_parameters=Default Parameters
   name=Name:
  
  
  
  1.16      +1 -0      jakarta-jmeter/src_1/org/apache/jmeter/resources/messages_ja.properties
  
  Index: messages_ja.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/resources/messages_ja.properties,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- messages_ja.properties	13 Jun 2002 00:45:17 -0000	1.15
  +++ messages_ja.properties	18 Jun 2002 01:01:14 -0000	1.16
  @@ -40,6 +40,7 @@
   domain=\u30c9\u30e1\u30a4\u30f3
   port=\u30dd\u30fc\u30c8
   path=\u30d1\u30b9
  +follow_redirects=Follow redirects [TO-DO]
   method=\u30e1\u30bd\u30c3\u30c9
   default_parameters=\u30c7\u30d5\u30a9\u30eb\u30c8\u30d1\u30e9\u30e1\u30fc\u30bf
   name=\u540d\u524d
  
  
  
  1.16      +1 -0      jakarta-jmeter/src_1/org/apache/jmeter/resources/messages_no.properties
  
  Index: messages_no.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/resources/messages_no.properties,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- messages_no.properties	13 Jun 2002 00:45:17 -0000	1.15
  +++ messages_no.properties	18 Jun 2002 01:01:14 -0000	1.16
  @@ -48,6 +48,7 @@
   domain=Domene
   port=Port:
   path=Sti:
  +follow_redirects=Follow redirects [TO-DO]
   method=Metode:
   default_parameters=Standard parametre
   name=Navn:
  
  
  
  1.6       +2 -2      jakarta-jmeter/src_1/org/apache/jmeter/visualizers/GraphVisualizer.java
  
  Index: GraphVisualizer.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/visualizers/GraphVisualizer.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- GraphVisualizer.java	23 May 2002 15:47:07 -0000	1.5
  +++ GraphVisualizer.java	18 Jun 2002 01:01:14 -0000	1.6
  @@ -376,7 +376,7 @@
   		throughputPanel.add(throughputField);
   		JPanel noSamplesPanel = new JPanel();
   		JLabel noSamplesLabel = new JLabel(JMeterUtils.getResString("graph_results_no_samples"));
  -		noSamplesField = new JTextField(10);
  +		noSamplesField = new JTextField(6);
   		noSamplesField.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
   		noSamplesField.setEditable(false);
   		noSamplesField.setForeground(Color.black);
  
  
  
  1.7       +0 -20     jakarta-jmeter/src_1/org/apache/jmeter/visualizers/StatVisualizerModel.java
  
  Index: StatVisualizerModel.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/visualizers/StatVisualizerModel.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- StatVisualizerModel.java	1 May 2002 23:48:53 -0000	1.6
  +++ StatVisualizerModel.java	18 Jun 2002 01:01:14 -0000	1.7
  @@ -196,8 +196,6 @@
   		// clear the data structures
   		responseCodeMap.clear();
   		labelMap.clear();
  -		// and tell all our listeners to update themselves.
  -		clearAllListeners();
   		this.fireDataChanged();
   	}
   
  @@ -216,24 +214,6 @@
   				continue;
   			}
   			((GraphListener)myObj).updateGui();
  -		}
  -	}
  -
  -	/****************************************
  -	 * Description of the Method
  -	 ***************************************/
  -	protected void clearAllListeners()
  -	{
  -		Iterator i = listeners.iterator();
  -//        System.out.println("clearAllListeners called - size of List=" + listeners.size());
  -		while(i.hasNext())
  -		{
  -			Object myObj = i.next();
  -			if(!(myObj instanceof Clearable))
  -			{
  -				continue;
  -			}
  -			((Clearable)myObj).clear();
   		}
   	}
   
  
  
  
  1.4       +10 -20    jakarta-jmeter/xdocs/usermanual/build-adv-web-test-plan.xml
  
  Index: build-adv-web-test-plan.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/xdocs/usermanual/build-adv-web-test-plan.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- build-adv-web-test-plan.xml	6 Mar 2002 03:52:03 -0000	1.3
  +++ build-adv-web-test-plan.xml	18 Jun 2002 01:01:15 -0000	1.4
  @@ -10,11 +10,7 @@
   <section name="6. Building an Advanced Web Test Plan" anchor="building">
   <p>In this section, you will learn how to create advanced
   <a href="build-test-plan.html">Test Plans</a> to test a Web site.</p>
  -<p>
  -<ul>
  -<li><a href="#session_url_rewriting">6.1 Handling User Sessions With URL Rewriting</a></li>
  -</ul>
  -</p>
  +
   <p>For an example of a basic Test Plan, see
   <a href="build-web-test-plan.html">Building a Web Test Plan</a>.</p></section>
   
  @@ -22,24 +18,18 @@
   <p>If your web application uses URL rewriting rather than cookies to save session information,
   then you'll need to do a bit of extra work to test your site.</p>
   <p>To respond correctly to URL rewriting, JMeter needs to parse the HTML
  -received from the server and retrieve the unique session ID.  To do this, put
  -all your requests inside a <complink name="Modification Manager"/>, with an <complink
  -name="HTML Link Parser"/> attached.  Then, include the session ID as an additional parameter
  -with each <complink name="HTTP Request"/>, with ".*" as the value.</p>
  +received from the server and retrieve the unique session ID.  Use the appropriate <complink name="URL Rewriting 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>
   
   <example title="URL Rewriting Example">
  -<p>Download <a href="../demos/URLRewritingExample.jmx">this example</a>. In Figure 1 is shown a test plan using URL rewriting.  Note that all HTTP Requests are
  -contained within the <complink name="Modification Manager"/>. The <complink name="Modification Manager"/>
  -also has an <complink name="HTML Link Parser"/> attached to it.</p>
  -<note>It would be possible to use other <a href="component_reference.html#logic_controllers">Logic
  -Controllers</a> within the
  -<complink name="Modification Manager"/> without affecting the Modification Manager.</note>
  +<p>Download <a href="../demos/URLRewritingExample.jmx">this example</a>. In Figure 1 is shown a 
  +test plan using URL rewriting.  Note that the URL Re-writing modifier is attached to the ThreadGroup,
  +thus assuring that it will affect every request in that ThreadGroup.</p>
   <figure image="../images/screenshots/url_rewrite_example_a.gif">Figure 1 - Test Tree</figure>
  -<p>In Figure 2, we see the "Send Parameters with Request" section of one of the
  -<complink name="HTTP Request"/> objects.  It shows, in addition to the login
  -information, the SESSION_ID parameter, with a value of ".*", which is a regular expression
  -that will match any string.  Your application will have its own unique name for
  -this parameter, which you will have to put in place of "SESSION_ID".</p>
  +<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="../images/screenshots/url_rewrite_example_b.gif">Figure 2 - Request parameters</figure>
   </example>
   </section>
  
  
  
  1.6       +1 -1      jakarta-jmeter/xdocs/usermanual/build-test-plan.xml
  
  Index: build-test-plan.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/xdocs/usermanual/build-test-plan.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- build-test-plan.xml	13 Jun 2002 00:45:19 -0000	1.5
  +++ build-test-plan.xml	18 Jun 2002 01:01:15 -0000	1.6
  @@ -37,7 +37,7 @@
   controls allow you to configure the behavior of that particular test element.  What can be
   configured for an element depends on what type of element it is.</p>
   
  -<p>The Test Tree itself can be manipulated by dragging and dropping components around the test tree.</p>
  +<note>The Test Tree itself can be manipulated by dragging and dropping components around the test tree.</note>
   </subsection>
   
   <subsection name="3.4 Running a Test Plan" anchor="run">
  
  
  
  1.11      +10 -18    jakarta-jmeter/xdocs/usermanual/build-web-test-plan.xml
  
  Index: build-web-test-plan.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/xdocs/usermanual/build-web-test-plan.xml,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- build-web-test-plan.xml	15 Jun 2002 02:44:39 -0000	1.10
  +++ build-web-test-plan.xml	18 Jun 2002 01:01:15 -0000	1.11
  @@ -159,7 +159,7 @@
   Figure 5.5. HTTP Request for Jakarta Home Page</figure>
   
   <p>Next, add the second HTTP Request and edit the following properties (see
  -Figure 5.56:
  +Figure 5.6:
   <ol>
   <li>Change the Name field to "Project Guidelines".</li>
   <li>Set the Path field to "/site/guidelines.html".</li>
  @@ -182,8 +182,8 @@
   output file.  You can either type it into the filename field, or select the
   Browse button and browse to a directory and then enter a filename.</p>
   
  -<figure image="../images/screenshots/webtest/file-reporter.gif">
  -Figure 5.7. File Reporter Listener</figure>
  +<figure image="../images/screenshots/graph_results.gif">
  +Figure 5.7. Graph Results Listener</figure>
   
   </section>
   
  @@ -204,28 +204,20 @@
   </section>
   
   <section name="5.7 Running the Test Plan" anchor="running">
  -<p>Before running the Test Plan, You have to manually open the File Reporter
  -output file. Select the File Reporter tree element, and select the Open button,
  -which is located at the bottom of the Control Panel.</p>
   
   <p>From the Run menu, select Run.</p>
   
  -<note>The current version of JMeter does not let you know
  -when it has finished running your Test Plan.  You have to determine this
  -by viewing the console output or the File Reporter output file.</note>
  +<note>JMeter lights up a green square in the upper-right-hand corner to indicate if a test is
  +currently running.  The square is turned gray when all tests stop.  Even after you select "stop",
  +the green light will stay on until all test threads have exited.</note>
   
   <p>Once JMeter has finished running your Test Plan, select Stop from the
   Run menu.</p>
  -<p>Next, you need to close the File Reporter output file.  Select
  -the File Reporter tree element, and select the Close button on the
  -Control Panel.</p>
  -<p>To view the results, open the File Reporter output file in a text
  -editor (see Figure 5.8). The format is [URL][space][Response time in milliseconds].</p>
  -<p>Alternatively, you can use the <complink name="Data Analyzer"/> for a graphical
  -view of the data.</p>
  +<p>If you selected a file to save the results to in your listener, then you will have a file that can be
  +opened in any visualizer.  Each visualizer will display the results in it's own fashion.</p>
   
  -<figure image="../images/screenshots/webtest/file-reporter-results.gif">
  -Figure 5.8. Test Plan Results</figure>
  +<note>It is possible to have the same file open in more than one visualizer.  This is not a problem.  JMeter
  +will ensure during the test run that no sample is recorded to the same file more than once.</note> 
   
   </section>
   
  
  
  
  1.11      +2 -0      jakarta-jmeter/xdocs/usermanual/get-started.xml
  
  Index: get-started.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/xdocs/usermanual/get-started.xml,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- get-started.xml	13 Jun 2002 00:45:19 -0000	1.10
  +++ get-started.xml	18 Jun 2002 01:01:15 -0000	1.11
  @@ -154,6 +154,8 @@
   	<property name="ssl.provider">You must specify the class for your SSL
   	implementation.  If you are using the JSSE from sun, then it is:<br/>
   	com.sun.net.ssl.internal.ssl.Provider.</property>
  +	<property name="xml.parser">You can specify an implementation as your XML
  +	parser.  The default value is: org.apache.xerces.parsers.SAXParser</property>
     <property name="user.dir">The directory JMeter will first go to for saving and
   	loading test scripts.</property>
     <property name="remote_hosts">Comma-delimited list of remote JMeter hosts.
  
  
  
  1.19      +2 -0      jakarta-jmeter/xdocs/usermanual/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/xdocs/usermanual/index.xml,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- index.xml	13 Jun 2002 00:45:19 -0000	1.18
  +++ index.xml	18 Jun 2002 01:01:15 -0000	1.19
  @@ -6,6 +6,7 @@
   
   <body>
   <section name="User's Manual">
  +<note>JMeter's documentation is being updated.  Some parts are out-of-date.  Sorry for any inconvenience.</note>
   
   <ul>
     <li><a href="intro.html">1. Introduction</a></li>
  @@ -86,6 +87,7 @@
   	 <li><a href="best-practices.html#limit_threads">11.1 [ALL] Limit the Number of Threads</a></li>
   	 <li><a href="best-practices.html#put_cookie_manager">11.2 [HTTP] Where to Put the Cookie Manager</a></li>
   	 <li><a href="best-practices.html#put_auth_manager">11.3 [HTTP] Where to Put the Authorization Manager</a></li>
  +	 <li><a href="best-practices.html#proxy_server">11.4 Using the Proxy Server to record test scripts</a></li>
     </ul>
     <li><a href="boss.html">12. Help! My boss wants me to load test our web app!</a></li>
   
  
  
  
  1.5       +1 -1      jakarta-jmeter/xdocs/usermanual/remote-test.xml
  
  Index: remote-test.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/xdocs/usermanual/remote-test.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- remote-test.xml	13 Jun 2002 00:45:19 -0000	1.4
  +++ remote-test.xml	18 Jun 2002 01:01:15 -0000	1.5
  @@ -47,7 +47,7 @@
   add the value of your running JMeter server's IP address.  Multiple such servers can be added, comma-delimited.</p>
   
   <p><b>Step 4: Start the JMeter Client</b></p>
  -<p>Now you are ready to start the JMeter client. For MS-Windows, start the client with the script "bin/jmeter.bat".  For UNIX, 
  +<p>Now you are ready to start the controlling JMeter client. For MS-Windows, start the client with the script "bin/jmeter.bat".  For UNIX, 
   use the script "bin/jmeter".  You will notice that the Run menu contains two new sub-menus: "Remote Start" and "Remote Stop" 
   (see figure 1). These menus contain the client that you set in the properties file.  Use the remote start and stop instead of the 
   normal JMeter start and stop menu items.</p>
  
  
  
  1.5       +10 -1     jakarta-jmeter/xdocs/usermanual/test_plan.xml
  
  Index: test_plan.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/xdocs/usermanual/test_plan.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- test_plan.xml	13 Jun 2002 00:45:19 -0000	1.4
  +++ test_plan.xml	18 Jun 2002 01:01:15 -0000	1.5
  @@ -9,6 +9,15 @@
   
   <section name="4.0 Elements of a Test Plan">
   
  +<p>The Test Plan object has a new checkbox to select called "Functional Testing".  If selected, it
  +will cause JMeter to record the data returned from the server for each sample.  If you have 
  +selected a file in your test listeners, this data will be written to file.  This can be useful if
  +you are doing a small run to ensure that JMeter is configured correctly, and that your server
  +is returning the expected results.  The consequence is that the file will grow huge quickly, and
  +JMeter's performance will suffer.  This option should be off if you are doing stress-testing (it
  +is off by default).  </p>
  +<p>If you are not recording the data to file, this option makes no difference.</p>
  +
   <subsection name="4.1 ThreadGroup" anchor="thread_group">
   <p>Thread group elements are the beginning points of any test plan.  All elements
   of a test plan must be under a thread group.  As the name implies, the thread group
  @@ -36,7 +45,7 @@
   
   <subsection name="4.2 Controllers" anchor="controllers">
   
  -<p> JMeter has two types of Controllers: Generative and Logical.</p>
  +<p> JMeter has two types of Controllers: Samplers and Logical Controllers.</p>
   
   <p>Samplers tell JMeter to send requests to a server. For
   example, add an HTTP Request Sampler if you want JMeter
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>