Java XmlSlurper parseText-节点名称替换为变量

Java XmlSlurper parseText-节点名称替换为变量,java,groovy,xml-parsing,xmlslurper,Java,Groovy,Xml Parsing,Xmlslurper,解析XML响应时,我将在数组列表中声明所有节点的名称myTag,并调用API端点,获取XML响应文本并存储在xmlResult中 然后我循环所有节点值,得到节点文本 我的代码 def myTag =['appNo','date','name'] def xmlResult = new XmlSlurper().parseText(responseObject.getResponseText()) myTag .eachWithIndex({ def item, def index ->

解析XML响应时,我将在数组列表中声明所有节点的名称
myTag
,并调用API端点,获取XML响应文本并存储在
xmlResult

然后我循环所有节点值,得到节点文本

我的代码

def myTag =['appNo','date','name']

def xmlResult = new XmlSlurper().parseText(responseObject.getResponseText())

myTag .eachWithIndex({ def item, def index ->
    def readableTag = myTag.get(index)  
    def result = xmlResult.application.$readableTag.text()
    println result
})
对于上面循环的所有节点,我得到的结果都是空的,但是当我使用下面的循环时,我得到的结果是空的

def result = xmlResult.application.appNo.text()
def result1 = xmlResult.application.date.text()
def result2 = xmlResult.application.name.text()

让我知道如何从变量传递节点值,以及如何用上述语句中的变量值替换?

我得到了答案,在双引号内传递变量

myTag .eachWithIndex({ def item, def index ->
    def readableTag = myTag.get(index)  
    def result = xmlResult.application."${readableTag}".text()
    println result
})