Я начну с того, что признаю свою предвзятость в том, что я руководлю реализацией MOXy JAXB, что подводит меня к моей первой точке.
1.Существует несколько реализаций JAXB
Поскольку JAXB является стандартом ( JSR-222 ), существует несколько реализаций: Metro (эталонная реализация), EclipseLink MOXy , Apache JaxMe и т. д. Если вы столкнулись с ошибкой show stoppper в одной реализации, вы можете попробовать другую.
2,JAXB - это уровень связывания по умолчанию как для JAX-RS (веб-службы RESTful), так и для JAX-WS (веб-службы SOAP)
JAXB был разработан совместно с JAX-WS, а JAX-RS был написаниспользовать JAXB.JAXB поддерживается на всех серверах приложений Java EE 5 и Java EE 6.
3.JAXB поддерживает функции Java 5, такие как обобщенные типы и перечисления
Это может иметь большое значение для вас, но JAXB поддерживает обобщенные и перечисления, а XML Beans - нет.
4.Отдельные реализации имеют очень полезные расширения
Например, MOXy имеет расширения для отображения на основе XPath, файл метаданных XML и расширения для отображения сущностей JPA: