【发布时间】:2011-08-12 18:32:31
【问题描述】:
我在使用 XMLSlurper 更新 XML 文档时遇到问题。大多数事情都有效,但在某些情况下,“查找”找不到我刚刚附加的节点(appendNode)。新节点在处理结束时存在,但在添加子节点时找不到。
我发现了一篇关于 XMLSlurper 的帖子,上面说找到新节点需要再次调用 parseText 和/或 StreaMarkupBuilder(见下文)。真的?!这看起来很笨拙,以至于我想我会在 SO 上进行验证。
这是一个代码 sn-p。即使刚刚添加了节点,“查找”也会得到 NoChildren。
codeNode.appendNode {
'lab:vendorData'() {}
}
vendorNode = codeNode.children().find { it.name() == "vendorData" }
“appendNode 不会直接修改 slurped 文档。当使用 StreamingMarkupBuilder 写出文档时,会“即时”应用编辑。” http://markmail.org/message/5nmxbhwna7hr5zcq#query:related%3A5nmxbhwna7hr5zcq+page:1+mid:bkdesettsnfnieno+state:results
为什么我找不到我的新节点?!
【问题讨论】:
-
您找到的邮件列表帖子是正确的
标签: groovy xmlslurper