I am fetching a part of xml using XmlSlurper, when xml has <node> </node>
(value with 2 space), its converting it as <node/>
, but i want to keep it as original XML
Original XML <node> </node>
Converted by XmlSlurper: <node/>
how to avoid XML conversion to <node/>
i am using below code
XmlSlurper slurper = new XmlSlurper();
def xml = slurper.parseText(testxml);
def node=XmlUtil.serialize(xml.MessageRequest.LineSize[1]);
msg.put("node",node);
use slurper.setKeepWhitespace(true)
method to instruct slurper to keep whitespaces in values
import groovy.xml.*
def testxml = '''<root><a><node> </node></a></root>'''
XmlSlurper slurper = new XmlSlurper();
slurper.setKeepWhitespace(true); //<<------ this line
def xml = slurper.parseText(testxml);
def node=XmlUtil.serialize(xml.a);
result:
<?xml version="1.0" encoding="UTF-8"?><a>
<node> </node>
</a>