我的代碼通過將Attribute
添加到現有的Element
來修改XML Document
。在修改之前,我使用Schema
和Validator
通過驗證運行Document
,並通過。XML文檔驗證在修改過的文檔上失敗,但在重新編譯時通過
但是,如果我將Document
實例傳遞給Validator
,我添加Attribute
(對每個模式有效)後失敗。
如果作爲中介步驟,我將Document
實例轉換爲String
並重新解析爲Document
,此新的Document
通過驗證。
我想我不應該這樣做。我嘗試使用normalizeDocument
和normalize
,這些都沒有解決問題。
更新
我寫一個單元測試,什麼也不做,但驗證文檔,添加屬性,並重新驗證文檔。這通過。但是,當我運行整個系統通過文檔的集成測試時,它會失敗。再次,轉換爲字符串並返回到文檔通過驗證。
該代碼不在我可以粘貼在這裏的位置,它似乎是單元測試通過後的更廣泛的問題。
任何關於在哪裏進行調查的建議都會有所幫助。
如何修改文檔(DOM,JDOM,XSLT?)什麼是確切的驗證錯誤? – obecker
使用DOM。在元素「y」中不允許使用屬性「x」 –
如果沒有可重現的代碼示例,很難說清楚。 – obecker