Некоторые сравнения и краткая история JAX-RPC / JAX-WS . Я думаю, что статья немного запутала различия в привязке данных. JAX-WS в настоящее время использует JAX-B 2.x. JAX-B 2.x сильно отличается от JAX-B 1.x и других инструментов привязки реализации, таких как Castor. В этой статье более подробно рассматриваются различия между JAX-B 1.x и JAX-B 2.x. Если вы действительно хотите оценить различия, вам нужно взглянуть на сгенерированный код и оценить мобильность аннотированных POJO в JAX-B 2.x.
Любое обсуждение Java и XML было бы неполным без упоминания JAX-P. Вот презентация от Java One по истории JAX-P.
Также важна эволюция SAAJ . Самый большой эволюционный шаг, который я могу вспомнить для SAAJ, - это когда он перешел к расширению DOM, чтобы ваши обработчики могли легко взаимодействовать напрямую с XML-сообщением RAW SOAP.
Существует также история связанных реализаций JAX-P, JAX-WS и JAX-B в Sun JVM. В этом FAQ рассматриваются некоторые подробности связанных реализаций JAX-P и способы их переопределения. Если память мне не изменяет, все началось с того, что Crimson и Saxon были объединены (или, по крайней мере, являлись эталонными реализациями), а теперь Xerces и Xalan связаны в дистрибутивах Sun. RI JAX-WS и JAX-B из Metro также объединены в эти дни. Версия каждого связанного API и реализации зависит от основной (и иногда второстепенной) версии JVM, которую вы используете. Ваш сервер приложений также, вероятно, добавит свою собственную реализацию, чтобы испортить вам день. Одобренный механизм отмены стандартов будет вашим другом во многих из этих случаев. Файлы конфигурации и / или системные свойства для определения ваших реализаций фабрики SAAJ и JAX-P также будут полезны.