Author: sebb
Date: Sun May  2 01:33:04 2010
New Revision: 940137

URL: http://svn.apache.org/viewvc?rev=940137&view=rev
Log:
Handle errors in sampling
Ensure sample is always generated

Modified:
    
jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/sampler/PublisherSampler.java

Modified: 
jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/sampler/PublisherSampler.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/sampler/PublisherSampler.java?rev=940137&r1=940136&r2=940137&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/sampler/PublisherSampler.java
 (original)
+++ 
jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/sampler/PublisherSampler.java
 Sun May  2 01:33:04 2010
@@ -136,19 +136,24 @@ public class PublisherSampler extends Ba
         }
         StringBuilder buffer = new StringBuilder();
         int loop = getIterationCount();
-        if (publisher != null && publisher.isValid) {
-            result.sampleStart();
-            for (int idx = 0; idx < loop; idx++) {
-                String tmsg = getMessageContent();
-                publisher.publish(tmsg);
-                buffer.append(tmsg);
+        result.sampleStart();
+        try {
+            if (publisher != null && publisher.isValid) {
+                for (int idx = 0; idx < loop; idx++) {
+                    String tmsg = getMessageContent();
+                    publisher.publish(tmsg);
+                    buffer.append(tmsg);
+                }
+                result.sampleEnd();
+                result.setResponseCodeOK();
+                result.setResponseMessage(loop + " messages published");
+                result.setSuccessful(true);
+                result.setSamplerData(buffer.toString());
+                result.setSampleCount(loop);
             }
+        } catch (Exception e) {
             result.sampleEnd();
-            result.setResponseCodeOK();
-            result.setResponseMessage(loop + " messages published");
-            result.setSuccessful(true);
-            result.setSamplerData(buffer.toString());
-            result.setSampleCount(loop);
+            result.setResponseMessage(e.toString());
         }
         return result;
     }


Reply via email to