mstover1    02/02/17 13:33:36

  Modified:    src/org/apache/jmeter/protocol/http/parser HtmlParser.java
               src/org/apache/jmeter/reporters ResultCollector.java
  Log:
  Fixing "out of memory" errors
  
  Revision  Changes    Path
  1.16      +7 -3      
jakarta-jmeter/src/org/apache/jmeter/protocol/http/parser/HtmlParser.java
  
  Index: HtmlParser.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/org/apache/jmeter/protocol/http/parser/HtmlParser.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- HtmlParser.java   16 Feb 2002 03:21:41 -0000      1.15
  +++ HtmlParser.java   17 Feb 2002 21:33:36 -0000      1.16
  @@ -364,6 +364,10 @@
                String selectName = null;
                NodeList childNodes = formNode.getChildNodes();
                NamedNodeMap atts = formNode.getAttributes();
  +             if(atts.getNamedItem("action") == null)
  +             {
  +                     throw new MalformedURLException();
  +             }
                String action = atts.getNamedItem("action").getNodeValue();
                UrlConfig url = createUrlFromAnchor(action, context);
                recurseForm(childNodes, url, selectName);
  @@ -375,8 +379,8 @@
         *  !ToDo (Class description)
         *
         *@author     $Author: mstover1 $
  -      *@created    $Date: 2002/02/16 03:21:41 $
  -      *@version    $Revision: 1.15 $
  +      *@created    $Date: 2002/02/17 21:33:36 $
  +      *@version    $Revision: 1.16 $
         ***********************************************************/
        public static class Test extends TestCase
        {
  
  
  
  1.19      +34 -13    
jakarta-jmeter/src/org/apache/jmeter/reporters/ResultCollector.java
  
  Index: ResultCollector.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/org/apache/jmeter/reporters/ResultCollector.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- ResultCollector.java      16 Feb 2002 03:21:42 -0000      1.18
  +++ ResultCollector.java      17 Feb 2002 21:33:36 -0000      1.19
  @@ -56,6 +56,7 @@
   
   import org.apache.jmeter.gui.*;
   import java.util.*;
  +import java.lang.ref.*;
   import java.io.*;
   import org.apache.jmeter.samplers.*;
   import org.apache.jmeter.visualizers.ViewResultsVisualizer;
  @@ -74,7 +75,7 @@
                  Serializable
   {
   
  -      protected ArrayList results = new ArrayList();
  +      protected List results = Collections.synchronizedList(new ArrayList());
         private String name;
         private ModelSupported listener;
         private int current;
  @@ -140,12 +141,14 @@
   
         public String getSampleLabel()
         {
  -               if(current < results.size() && current >= 0)
  -               {
  -               SampleResult res = (SampleResult)results.get(current);
  -               return (String)res.getValue(SampleResult.SAMPLE_LABEL);
  -               }
  -               else return "";
  +             try
  +             {
  +               return 
(String)getCurrentSample().getValue(SampleResult.SAMPLE_LABEL);
  +             }
  +             catch(NullPointerException e)
  +             {
  +                     return "";
  +             }
         }
   
         public SampleResult getCurrentSample()
  @@ -155,16 +158,26 @@
                                SampleResult res = (SampleResult)results.get(current);
                                return res;
                  }
  -               return null;
  +               else if(results.size() > 0)
  +               {
  +                     return (SampleResult)results.get(results.size()-1);
  +               }
  +               else
  +               {
  +                     return null;
  +               }
         }
   
         public String getTextResponse()
         {
  -               if(current < results.size() && current >= 0)
  -               {
  -                             return new 
String((byte[])((SampleResult)results.get(current)).getValue(SampleResult.TEXT_RESPONSE));
  -               }
  -               else return "";
  +             try
  +             {
  +               return new 
String((byte[])getCurrentSample().getValue(SampleResult.TEXT_RESPONSE));
  +             }
  +             catch(NullPointerException e)
  +             {
  +                     return "";
  +             }
         }
   
         public void next()
  @@ -186,6 +199,14 @@
         public void sampleOccurred(SampleEvent e)
         {
                  results.add(e.getResult());
  +               if(results.size() > 100)
  +               {
  +                     results.remove(0);
  +                     if(current > 0)
  +                     {
  +                             current--;
  +                     }
  +               }
                  if(listener != null)
                  {
                                listener.updateGui();
  
  
  

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

Reply via email to