Я разделяю входящий XML-файл, используя JAXB.
Я знаю, что это похоже на дублирующую тему, однако
Ожидаемое
<?xml version="1.0"?>
Фактический
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
Я попытался использовать JAXB_FRAGMENT, который полностью удаляет первую строку
jaxbMarshaller.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE);
И
jaxbMarshaller.setProperty("com.sun.xml.bind.xmlHeaders", "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>");
с и без Marshaller.JAXB_FRAGMENT
К вашему сведению, я использую StringWriter
JAXBContext jaxbContext = JAXBContext.newInstance(ExportDocument.class);
Marshaller jaxbMarshaller = jaxbContext.createMarshaller();
jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);//
//jaxbMarshaller.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE);
//jaxbMarshaller.setProperty("com.sun.xml.bind.xmlHeaders", "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>");
StringWriter sw = new StringWriter();
jaxbMarshaller.marshal(employee, sw);
String xmlContent = sw.toString();
System.out.println(xmlContent);