现在我将其作为JAXB Marshaller的XML输出
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><create></create>
但我希望我的根元素为:
<create xmlns="http://ws.abc.com" xmlns:doc="http://ws.abc.com">
我是否需要使用解析器修改它,或者是否有可用的注释。
答案 0 :(得分:36)
您可以在Marshaller
上设置以下属性以删除标题:
marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);
了解更多信息
答案 1 :(得分:1)
我过去曾使用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);
所以也许你的编组然后处理。不确定这是否是最好的方法,但它会起作用。