8
我創建了一個XML模式(foo.xsd)並使用xjc
爲JAXB創建了我的綁定類。假設根元素是collection
,我正在寫N document
對象,這些對象是複雜的類型。使用JAXB和Stax驗證編組XML文檔
因爲我打算寫出大型的XML文件,所以我使用Stax來寫出collection
根元素,並使用Marshaller.marshal(JAXBElement, XMLEventWriter)
編寫JAXB來編組文檔子樹。這是jaxb's unofficial user's guide推薦的方法。
我的問題是,如何在編組XML時驗證XML?如果我將模式綁定到JAXB編組器(使用Marshaller.setSchema()
),我得到驗證錯誤,因爲我只是編組子樹(它抱怨它沒有看到collection
根元素「)。我想我真正想要做的是綁定一個我想要能夠使用JAXB
編組和解組大小的XML文檔,而不會出現內存不足,所以如果有更好的方法,可以使用JAXB
來編組和解組。這樣做的方式讓我知道
+1好問題。 – skaffman 2010-03-18 15:51:34