I am trying to parse an jmeter soap response (XML), however I get a parsing error
org.xml.sax.SAXParseException: Content is not allowed in prolog
I have validated that the SOAP response (XML) is valid using online tools, however to no avail. I still get a error. Even when I attempt to get a pretty XML output I get null error because the parse has resulted in null.
The code snippet is below:
import groovy.util.XmlSlurper;
import groovy.util.XmlParser;
import groovy.util.slurpersupport.NodeChild;
def xmlContent = ctx.getPreviousResult().getResponseDataAsString();
log.info(xmlContent);
def stringWriter = new StringWriter()
def parse = new XmlSlurper();
def respParse = parse.parseText(xmlContent);
log.info(respParse);
def test = new XmlNodePrinter(new PrintWriter(stringWriter)).print(respParse)
log.info(test);
XML is:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns2:Response xmlns:ns2="URL" xmlns="URL" xmlns:ns4="URL" xmlns:ns3="URL" xmlns:ns5="URL">
<something>Code</something>
<somethingDescription>Message</somethingDescription>
<ns2:pending/>
<ns2:posted/>
</ns2:Response>
</soapenv:Body>
</soapenv:Envelope>
Any ideas as to what I'm doing wrong