Я пытаюсь создать XML из java-объектов, это фактически List<MyElem>
. Сам объект MyElem упорядочен, хотя я не могу упорядочить список этих объектов - одно из решений, которое приходит на ум, - это создать еще один класс, чтобы обернуть этот список, но кажется, что это так уродливо. Есть ли более элегантный способ?Как создать xml с помощью JAXB с пространством имен
И еще один вопрос - есть ли способ предоставить префикс схемы для каждого элемента, например <n:elem>some val</n:elem>
без указания его для каждого свойства?
UPD: во втором вопросе я имел в виду, что если у меня есть свойство, как public String element
он получает выстроил в <elem>some val</elem>
в то время как я хочу (и любой другой собственности) с префиксом n:
, например, <n:elem>
.
И позвольте мне предоставить код для первого: List<Book> list = new ArrayList<>(); JAXBContext context = JAXBContext.newInstance(Book.class); Marshaller jaxbMarshaller = context.createMarshaller(); jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); list.add(new Book()); list.add(new Book()); jaxbMarshaller.marshal(list, writer);
который производит <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
в то время как я хочу иметь книжные элементы внутри
Второй вопрос неясно, что вы имеете в виду? перефразируйте его. – ulab