我遇到了使用XMLSlurper更新XML文檔的麻煩。大多數情況下都能正常工作,但在某些情況下,「find」找不到我剛添加的節點(appendNode)。新節點是在有處理結束,但是當我在加入孩子們的中間是找不到的。XMLSlurper appendNode沒有看到更改
我發現了一個大約的XmlSlurper後,指出尋找新的節點需要再次調用parseText和/或StreaMarkupBuilder(見下文)。真?!這似乎很笨拙,我認爲我會在SO上進行驗證。
這裏是一個代碼段。即使Node剛添加,「find」也會獲得NoChildren。
codeNode.appendNode {
'lab:vendorData'() {}
}
vendorNode = codeNode.children().find { it.name() == "vendorData" }
「appendNode doea不能直接修改的咕嚕咕嚕的文件,在編輯應用‘對飛’當文檔被寫出來使用StreamingMarkupBuilder。」 http://markmail.org/message/5nmxbhwna7hr5zcq#query:related%3A5nmxbhwna7hr5zcq+page:1+mid:bkdesettsnfnieno+state:results
爲什麼我找不到我的新節點?
的你發現的郵件列表後是正確的 –