writer = createItemWriter();
writer.setHeaderCallback(new StaxWriterCallback() {
@Override
public void write(XMLEventWriter writer) throws IOException {
XMLEventFactory factory = XMLEventFactory.newInstance();
try {
writer.add(factory.createStartElement("", "", "preHeader"));
writer.add(factory.createCharacters("PRE-HEADER"));
writer.add(factory.createEndElement("", "", "preHeader"));
writer.add(factory.createStartElement("ns", "http://www.springframework.org/test", "group"));
writer.add(factory.createStartElement("", "", "subGroup"));
writer.add(factory.createStartElement("", "", "postHeader"));
writer.add(factory.createCharacters("POST-HEADER"));
writer.add(factory.createEndElement("", "", "postHeader"));
}
catch (XMLStreamException e) {
throw new RuntimeException(e);
}
}
});
writer.setFooterCallback(new StaxWriterCallback() {
@Override
public void write(XMLEventWriter writer) throws IOException {
XMLEventFactory factory = XMLEventFactory.newInstance();
try {
writer.add(factory.createStartElement("", "", "preFooter"));
writer.add(factory.createCharacters("PRE-FOOTER"));
writer.add(factory.createEndElement("", "", "preFooter"));
writer.add(factory.createEndElement("", "", "subGroup"));
writer.add(factory.createEndElement("ns", "http://www.springframework.org/test", "group"));
writer.add(factory.createStartElement("", "", "postFooter"));
writer.add(factory.createCharacters("POST-FOOTER"));
writer.add(factory.createEndElement("", "", "postFooter"));
}
catch (XMLStreamException e) {
throw new RuntimeException(e);
}