我想解析特定元素的 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>

我的 Groovy 代码如下所示:
def request = new XmlSlurper().parseText(requestContent)
println request.ProvideUDBIdentityInformationRequest.RequestID

然而,输出是空的,而我期望的是“1”。

谢谢,
罗伯特

最佳答案

你能试一下吗:

println request.Body.ProvideUDBIdentityInformationRequest.RequestID

(您还缺少 xml 声明末尾的 ",但我想这是剪切/粘贴错误?)

关于groovy - 在 Groovy 中使用 XmlSlurper 读取 XML 元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5416296/

10-12 05:30