Java: Маршаллинг объекта - Удаление лишних аннотаций ns2 в xml

Я пытаюсь упорядочить данные внутри объекта в XML-файл на основе определенной схемы. Однако, когда я распечатываю файл xml, я получаю дополнительные аннотации к тегам xml. Есть ли способ избавиться от дополнительной аннотации пространства имен (например, ns2)

Это пример xml, который я получаю от маршалинга.

<?xml version="1.0" encoding="UTF-8" standalone="yes">
<root xmlns:ns2="http://www.something.com/something">
    <ns2:food>steak</ns2:food>
    <ns2:beverage>water</ns2:beverage>
</root>

Я хочу примерно следующее:

<?xml version="1.0" encoding="UTF-8" standalone="yes">
<root xmlns="http://www.something.com/something">
    <food>steak</food>
    <beverage>water</beverage>
</root>

Это то, что делает мой Java-код:

            JAXBContext context = JAXBContext.newInstance("com.schema");
            JAXBElement<FoodSchema> element = new JAXBElement<FoodSchema>
                (new QName("FoodSchema"), Food.class, foodSchema);
            Marshaller marshaller = context.createMarshaller();
            OutputStream os = new FileOutputStream(object.getFilePath());
            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); 
            marshaller.marshal(element, os);

Любая помощь приветствуется! Спасибо!

16
задан user459811 10 August 2011 в 17:16
поделиться