#java #xml #jaxb #eclipselink #moxy
#java #xml #jaxb #eclipselink #moxy
Вопрос:
Я объявляю свойство объекта списка с:
@XmlRootElement(namespace = "...")
@XmlType
public class Test {
private List<String> myList;
@XmlElementWrapper(name = "myListWrapper")
@XmlElement(name = "myList")
public List<String> getMyList() {
return myList;
}
}
Когда экземпляр этого класса с пустым списком myList
маршалируется, MOXy не генерирует пустую оболочку MyListWrapper
. Однако JAXB RI сделал бы это. Сгенерированный XML выглядит следующим образом при использовании RI:
<ns2:test xmlns:ns2="...">
<myListWrapper/>
</ns2:intensionalSet>
Есть ли способ получить тот же результат с MOXy?
Комментарии:
1. Вы пробовали использовать required = true в аннотации оболочки?
Ответ №1:
Примечание: я руководитель EclipseLink JAXB (MOXy) и член группы экспертов JAXB 2 (JSR-222).
Это ошибка в реализации MOXy JAXB. Вы можете использовать следующую ссылку, чтобы отследить эту проблему:
Комментарии:
1. Чтобы люди не переходили по ссылке, ошибка теперь исправлена.