我正在處理一個groovy腳本,在這個腳本中,我必須從請求XML文件中提取值並將其寫入XML響應文件。如何從XML Request中讀取值並使用Groovy寫入XML Response?
我知道如何從正常XML下面給出的讀取值:
def text = '''
<list>
<technology>
<name>Groovy</name>
</technology>
</list>
'''
def list = new XmlParser().parseText(text)
println list.technology.name.text()
我可以使用上述語法輕鬆訪問節點。但在我的情況下,請求文件具有'keyword:label'語法。考慮下面提及的申請文件進行貨幣轉換器:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:web="http://www.webserviceX.NET/">
<soap:Header/>
<soap:Body>
<web:ConversionRate>
<web:FromCurrency>USD</web:FromCurrency>
<web:ToCurrency>INR</web:ToCurrency>
</web:ConversionRate>
</soap:Body>
</soap:Envelope>
如何在這種情況下讀取FromCurrency
價值?除了使用XMLParser之外,還有沒有其他有效的方法可以處理更大的XML文件?
另外,儘管我通過創建腳本多個變量和使用語法「$ {} VAR_NAME使用響應它們的值寫入響應值寫入。
如果我想寫很多值(假設20+ )從請求到響應,那麼對於個人寫作的變量不是好辦法那麼,有沒有這方面的任何良好和有效的方式
我該怎麼辦的使用XMLParser的一樣嗎? – Madhusudan
爲什麼? XmlSlurper出了什麼問題? –
剛剛發佈了一個XmlParser示例的答案,但我同意@tim_yates:XmlSlurper出了什麼問題? – jalopaba