Ответ 1
Вы можете установить следующее свойство в Marshaller
, чтобы удалить заголовок:
marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);
Дополнительная информация
Сейчас я получаю это как XML-вывод от моего JAXB Marshaller
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><create></create>
Но я хочу, чтобы мой корневой элемент:
<create xmlns="http://ws.abc.com" xmlns:doc="http://ws.abc.com">
Нужно ли модифицировать это с помощью парсеров, или есть какая-либо аннотация.
Вы можете установить следующее свойство в Marshaller
, чтобы удалить заголовок:
marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);
Дополнительная информация
В прошлом я использовал Transformer. Вам нужно что-то вроде следующего образца кода:
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
StreamResult transformedDoc = new StreamResult(new StringWriter());
DOMSource source = new DOMSource(content); // Where content is a org.w3c.dom.Document object.
transformer.transform(source, transformedDoc);
Так что, возможно, ваш маршаллинг, а затем процесс. Не уверен, что это лучший подход, но он будет работать.