Я пытаюсь заставить Джексона создать XML-заголовок, как это делает JAXB, но я не могу понять, как добавить "standalone = 'yes'?"
Пример:
public class XmlTest {
@XmlRootElement
public static class Book {
}
@Test
public void testBookXml() throws JsonProcessingException {
XmlMapper mapper = new XmlMapper();
mapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true);
System.out.println("Jackson\n" + mapper.writeValueAsString(new Book()) + "\n");
StringWriter sw = new StringWriter();
JAXB.marshal(new Book(), sw);
System.out.println("JAXB\n" + sw.toString());
}
}
Вывод такой:
Jackson
<?xml version='1.0' encoding='UTF-8'?><Book/>
JAXB
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<book/>
Меня не волнует <Book/> vs <book/>
.Кроме манипуляций со строками, есть ли способ сделать заголовок Джексона похожим на заголовок JAXB?