В моем текущем проекте мы используем JAXB beans для Hibernate и для отправки данных в XML и JSON через [REST API] [1]. Мы хотим иметь возможность произвольно включать любой компонент JAXB в объект Result, который мы используем в качестве REST VO (например, как элемент <xsd:any>
), не имея отдельного метода сортировки для каждого другого типа, который может быть включен. Кажется, что самый простой способ заставить это работать - иметь аннотацию @XmlRootElement для каждого компонента.Есть ли проблемы с добавлением @XmlRootElement для каждого компонента JAXB?
- Это хороший подход к «бесшовной» сортировке?
- Есть ли последствия для этого?
Мы используем Java 1.6, EclipseLink/MOXy для jaxb, Jersey 1.x для REST и сервера приложений Tomcat. Наши бобы генерируются из файлов XML-схемы с помощью xjc и с использованием annox для добавления аннотации во время генерации.
[1]: В идеальном мире объекты данных будут отдельно от объектов предметной области, но это небольшой проект небольшой команды, поэтому развязка между базой данных и API не является необходимым