Я хочу установить значение атрибута в xml, имеющем xpath как: // Trade [@cancel], не имеет значения, какое значение установлено ранее, но какое бы значение я ни отправил, оно должно быть установлено
я получаю проблему как Нет подписи метода: org.apache.xml.dtm.ref.DTMNodeList.setAttribute () применима для типов аргументов: (java.lang.String, java.lang.String) значения: [cancel, true] ошибка в строке: 26
, даже если я не хочу передавать существующее значение атрибута cancel: ("// Trade [@ cancel = 'true']", но я хочу установить некоторое значение для отмены.как это сделать
enter code here
def file = """<DATA>
<ASSET tid="4" AssetType="Loan">
<Identifier tdes="FCSAstID" id="26415" />
<Identifier tdes="CUSIP" id="13134MBN2" />
<TRADEGROUP referenceticketid="YYasdfg" />
<TRADE LtdEventPubId="374104" Isname="true" cancel="false" value="30" positiontype="Assignment" quantity="50000.0000000000" >
</TRADE>
</DATA>"""
Document doc = DocumentBuilderFactory.newInstance()
.newDocumentBuilder().parse(file);
XPath xpath = XPathFactory.newInstance().newXPath();
NodeList nodes = (NodeList)xpath.evaluate("//Trade[@cancel='true']",doc,
XPathConstants.NODESET);
nodes.setAttribute("cancel","true")