Сравнение между Sun Metro и Apache CXF для разработки веб-сервисов?

StackOverflow https://stackoverflow.com/questions/1608996

Вопрос

Каковы относительные сильные и слабые стороны между Sun Metro и Apache CXF для разработки веб-сервисов на Java. Есть ли еще какие-то рамки, на которые мне следует обратить внимание?

Это было полезно?

Решение

Я был на вашем месте несколько месяцев назад и в итоге стал присматриваться к метро.

Для меня особенность убийства заключалась в том, что Metro использует стандартные аннотации, чтобы представить данный метод в виде веб-службы и , чтобы весь связующий код мог генерироваться автоматически во время выполнения. То есть никаких дополнительных шагов при сборке, развертывании и работе в стандартном контейнере сервлетов (я полагаю, 2.5) в Java 5, которая является нашей текущей платформой развертывания, не требуется.

Это очень хорошо сработало для нас.

Причина, по которой я обратился к стандартным аннотациям , заключается в том, что наши приложения, как правило, живут буквально в течение десятилетий, после чего требуется некоторая поддержка. Кодируя интерфейс вместо реализации, мы можем поменять все леса под кодом без изменения кода, реализующего веб-сервис. Через десять лет (или более) любая конкретная реализация, возможно, засохла и умерла, но с тех пор другие реализации могли подняться и быть немедленно подключаемыми.

Просто посмотрите, сколько вариантов у вас есть сегодня для контейнера сервлета ... В этом сила хорошего API!

<Ч>

Редактировать: очевидно, среда выполнения Java 6 включает в себя стек Metro и минимальный веб-сервер. Другими словами, одна JRE может быть заменой лесов, упомянутых выше: D

Другие советы

И Metro, и CXF являются стеками веб-служб, совместимыми с JAX-WS, и с точки зрения времени выполнения между ними очень мало выбора.

Однако CXF обладает значительно лучшей документацией, а также гораздо большей гибкостью и дополнительной функциональностью, если вы хотите выйти за пределы спецификации JAX-WS. На основании только документации я бы выбрал CXF в течение каждого метрополитена.

Однако я бы выбрал Spring WebServices вместо Metro или CXF. Он не совместим с JAX-WS, но я не считаю это проблемой. Это также значительно проще и значительно более гибко, чем любой из них. Настоятельно рекомендуется.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top