2013-06-20 4 views
6

Я знаю, что можно сериализовать непосредственно в String с помощью XmlMapper.writeValueAsString(), но я хотел бы сериализовать дерево DOM. Любой новый документ или, предпочтительно, сериализуется непосредственно в существующий узел DOM. Можно ли это сделать с Джексоном?Использование Jackson XmlMapper для сериализации в XML DOM

ответ

0

Я думаю, что нашел решение, используя XMLStreamWriter.

Попробуйте следующий фрагмент:

XMLOutputFactory factory = XMLOutputFactory.newInstance(); 
factory.createXMLStreamWriter(new DOMResult(yourNode)); 

XmlMapper mapper = new XmlMapper(); 
ToXmlGenerator xmlGenerator = mapper .getFactory().createGenerator(sw); 
mapper.writerFor(YourClass.class).writeValue(xmlGenerator, yourInstance);