在Groovy中使用XmlSlurper读取XML元素

在Groovy中使用XmlSlurper读取XML元素,groovy,xmlslurper,Groovy,Xmlslurper,我想为特定元素解析XML文档(SOAP请求消息)。文档存储在requestContent中,如下所示: <?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:udb="http://somenamespace> <soap:Header/> <soap:Body>

我想为特定元素解析XML文档(SOAP请求消息)。文档存储在
requestContent
中,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:udb="http://somenamespace>
    <soap:Header/>
    <soap:Body>
        <udb:ProvideUDBIdentityInformationRequest>
            <udb:RequestID>1</udb:RequestID>
            <udb:IDnumber>1</udb:IDnumber>
            <udb:UnifiedNumber>3</udb:UnifiedNumber>
        </udb:ProvideUDBIdentityInformationRequest>
    </soap:Body>
</soap:Envelope>
然而,输出是空的,而我希望是“1”

谢谢, 罗伯特你能试试吗

println request.Body.ProvideUDBIdentityInformationRequest.RequestID

(xml声明末尾还缺少一个
,但我想这是一个剪切/粘贴错误?

是的,缺少的引号是一个输入错误。提供Body元素时,它可以工作:-)
println request.Body.ProvideUDBIdentityInformationRequest.RequestID