1] С приведенным выше кодом, почему я не получаю ответ: два?
В соответствии с Официальный Groovy документ это должно быть
def rows = new XmlSlurper().parseText(dbresponse)
println(rows.row[1].file_data)
Первая строка - это «синтаксический анализ XML, возвращающий корневой узел как GPathResult».В вашем случае корневым узлом является rows
2] Как выполнить итерацию по всему документу xml, чтобы получить этот ответ: один два три четыре пять
println("Iterating using each() method")
rows.row.file_data.each { row ->
println(row)
}
println("Iterating using Groovy for loop")
for (fileData in rows.row.file_data) {
println(fileData)
}
println("Getting a list of necessary elements using Groovy Spread operator")
def fileDataList = rows.row*.file_data
println(fileDataList)
Вывод:
Iterating using each() method
One
two
three
four
five
Iterating using Groovy for loop
One
two
three
four
five
Getting a list of necessary elements using Groovy Spread operator
[One, two, three, four, five]