2011-03-16 105 views
1

我發送請求並獲取包含列表的響應。我必須遍歷該列表的元素,併爲列表中的每個元素髮送另一個請求。從SoapUI列表中獲取元素對Groovy列表的響應

下面是響應的簡化示例。在Groovy中,我需要迭代「mID」列表。我如何從響應中將它們獲取到Groovy中的列表中?

<ns:MeddelelseList> 
    <ns:Meddelelse> 
    <ns:mID>123456</ns:mID> 
    </ns:Meddelelse> 
    <ns:Meddelelse> 
    <ns:mID>234567</ns:mID> 
    </ns:Meddelelse> 
    <ns:Meddelelse> 
    <ns:mID>345678</ns:mID> 
    </ns:Meddelelse> 
    <ns:Meddelelse> 
    <ns:mID>456789</ns:mID> 
    </ns:Meddelelse> 
</ns:MeddelelseList> 

回答

1

我想你會發現XmlSlurper是有用的。下面的例子應該足以開始。 (我刪除了XML命名空間並直接使用文本。)

def rootNode = new XmlSlurper().parseText(
''' 
<MeddelelseList> 
    <Meddelelse> 
    <mID>123456</mID> 
    </Meddelelse> 
    <Meddelelse> 
    <mID>234567</mID> 
    </Meddelelse> 
    <Meddelelse> 
    <mID>345678</mID> 
    </Meddelelse> 
    <Meddelelse> 
    <mID>456789</mID> 
    </Meddelelse> 
</MeddelelseList> 
''') 

def mIDList = []  
rootNode.Meddelelse.mID.each { mID -> mIDList << mID } 
mIDList.each { mID -> println mID }