Удалить часть XML, используя Groovy с XML Sluper
Я новичок в Groovy, так что как часть моей задачи мне нужно обновить XML.
Мой xml::
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"xmlns:xsd="http://www.w3.org/2001/XMLSchema"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<root xmlns="">
<queries>
<query list="true" type="Query">
<retrieve extent="3" offset="0" size="10000" subtype="uk.co.netdev.icr.provisioning.data.Corp">
<criteria list="true" type="Criteria">
<string-criteria expression="IAS" field-name="name"/>
</criteria></retrieve></query>
</queries></root></in0></soapenv:Body></soapenv:Envelope>
Из этого xml мне нужно удалить некоторую часть xml и вывести вывод как:
<root xmlns=""><queries><query list="true" type="Query"><retrieve extent="3" offset="0" size="10000" subtype="uk.co.netdev.icr.provisioning.data.Corp"><criteria list="true" type="Criteria"><string-criteria expression="IAS" field-name="name"/></criteria></retrieve></query></queries></root>
Пожалуйста, предложите, спасибо.
1 ответ
Я думаю, это то, что вам нужно:
def soapMsg = new XmlSlurper().parseText(inputXml);
def output = groovy.xml.XmlUtil.serialize(soapMsg.Body.root)
Кстати, ваш входной XML выше имеет некоторый дополнительный тег: " in0>"