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]