groovy - 在 Groovy 中使用 XmlSlurper 读取 XML 元素

标签 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>
        <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/

相关文章:

html - 从 HTML 输出的 Groovy 漂亮的 XmlSlurper 输出?

Groovy:更正XMLSlurper的语法以查找具有给定属性的元素

gradle - 是否可以在Gradle build.gradle中使用@Grab?

java - 非 java 开发人员问题

jenkins - 在 Jenkins 管道中解析 XML 文件

xml - Groovy Node.depthFirst() 返回节点和字符串列表?

list - 将属性和值收集到字符串列表中

file - 如何从 groovy 正确调用 shell 命令

methods - 在 Groovy 中设置 MethodClosure 的委托(delegate)