Author: sebb
Date: Tue Mar 18 15:58:17 2008
New Revision: 638630

URL: http://svn.apache.org/viewvc?rev=638630&view=rev
Log:
Only set Tidy isXML if the document appears to be XML

Modified:
    
jakarta/jmeter/trunk/src/components/org/apache/jmeter/assertions/XPathAssertion.java
    
jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java

Modified: 
jakarta/jmeter/trunk/src/components/org/apache/jmeter/assertions/XPathAssertion.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/components/org/apache/jmeter/assertions/XPathAssertion.java?rev=638630&r1=638629&r2=638630&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/components/org/apache/jmeter/assertions/XPathAssertion.java
 (original)
+++ 
jakarta/jmeter/trunk/src/components/org/apache/jmeter/assertions/XPathAssertion.java
 Tue Mar 18 15:58:17 2008
@@ -32,6 +32,7 @@
 import org.apache.jmeter.util.TidyException;
 import org.apache.jmeter.util.XPathUtil;
 import org.apache.jorphan.logging.LoggingManager;
+import org.apache.jorphan.util.JOrphanUtils;
 import org.apache.log.Logger;
 import org.apache.xpath.XPathAPI;
 import org.apache.xpath.objects.XObject;
@@ -87,33 +88,35 @@
 
                Document doc = null;
 
-               try {
+        boolean isXML = JOrphanUtils.isXML(responseData);
+               
+        try {
                        doc = XPathUtil.makeDocument(new 
ByteArrayInputStream(responseData), isValidating(),
-                                       isWhitespace(), isNamespace(), 
isTolerant(), isQuiet(), showWarnings() , reportErrors(), true);
+                                       isWhitespace(), isNamespace(), 
isTolerant(), isQuiet(), showWarnings() , reportErrors(), isXML);
                } catch (SAXException e) {
                        log.debug("Caught sax exception: " + e);
-                       result.setError(true);
+                       result.setError(isXML);
                        result.setFailureMessage(new 
StringBuffer("SAXException: ").append(e.getMessage()).toString());
                        return result;
                } catch (IOException e) {
                        log.warn("Cannot parse result content", e);
-                       result.setError(true);
+                       result.setError(isXML);
                        result.setFailureMessage(new StringBuffer("IOException: 
").append(e.getMessage()).toString());
                        return result;
                } catch (ParserConfigurationException e) {
                        log.warn("Cannot parse result content", e);
-                       result.setError(true);
+                       result.setError(isXML);
                        result.setFailureMessage(new 
StringBuffer("ParserConfigurationException: ").append(e.getMessage())
                                        .toString());
                        return result;
                } catch (TidyException e) {                                     
        
-                       result.setError(true);
+                       result.setError(isXML);
                        result.setFailureMessage(e.getMessage());
                        return result;
                }
 
                if (doc == null || doc.getDocumentElement() == null) {
-                       result.setError(true);
+                       result.setError(isXML);
                        result.setFailureMessage("Document is null, probably 
not parsable");
                        return result;
                }
@@ -134,12 +137,12 @@
                                        }
                                        return result;
                                default:
-                                       result.setFailure(true);
+                                       result.setFailure(isXML);
                                    result.setFailureMessage("Cannot 
understand: " + pathString);
                                    return result;
                        }
                } catch (TransformerException e) {
-                       result.setError(true);
+                       result.setError(isXML);
                        result.setFailureMessage(
                                        new StringBuffer("TransformerException: 
")
                                        .append(e.getMessage())

Modified: 
jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java?rev=638630&r1=638629&r2=638630&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java
 (original)
+++ 
jakarta/jmeter/trunk/src/components/org/apache/jmeter/extractor/XPathExtractor.java
 Tue Mar 18 15:58:17 2008
@@ -36,6 +36,7 @@
 import org.apache.jmeter.util.XPathUtil;
 import org.apache.jorphan.logging.LoggingManager;
 import org.apache.jorphan.util.JMeterError;
+import org.apache.jorphan.util.JOrphanUtils;
 import org.apache.log.Logger;
 import org.apache.xpath.XPathAPI;
 import org.apache.xpath.objects.XObject;
@@ -215,8 +216,9 @@
       // convert unicode String -> UTF-8 bytes
       byte[] utf8data = unicodeData.getBytes("UTF-8"); // $NON-NLS-1$
       ByteArrayInputStream in = new ByteArrayInputStream(utf8data);
+      boolean isXML = JOrphanUtils.isXML(utf8data);
       // this method assumes UTF-8 input data
-      return 
XPathUtil.makeDocument(in,false,false,useNameSpace(),isTolerant(),isQuiet(),showWarnings(),reportErrors(),true);
+      return 
XPathUtil.makeDocument(in,false,false,useNameSpace(),isTolerant(),isQuiet(),showWarnings(),reportErrors(),isXML);
     }
 
     /**



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

Reply via email to