Главная » Spring » Экспортирование и использование веб-служб Spring

0

Одной из наиболее популярных трехбуквенных аббревиатур в по- следние годы стала аббревиатура SOA (Service-Oriented Architec- ture – сервис-ориентированная архитектура). Для разных людей аббревиатура SOA имеет разное значение. Но в основе SOA лежит идея, заключающаяся в том, что приложения могут и должны раз- рабатываться с уклоном на использование единого набора основных услуг, вместо того чтобы включать их реализацию в каждое при- ложение.

Например, в финансовом учреждении может эксплуатироваться несколько различных приложений, требующих доступа к информа-

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

Java и веб-службы имеют длинную совместную историю, и в Java имеется ряд возможностей, предназначенных для работы с веб- службами. Многие из них так или иначе интегрируются с фреймвор- ком Spring. В этой книге просто невозможно охватить все фреймвор- ки и наборы инструментов для работы с веб-службами, поддержива- ющие возможность использования совместно с фреймворком Spring. Поэтому далее будет рассмотрена наиболее известная поддержка экспортирования и использования веб-служб SOAP с использовани- ем Java API для XML Web Services, или JAX-WS, входящей в состав самого фреймворка Spring.

А что можно сказать о поддержке JAX-RPC и XFire? В предыдущем из- дании книги рассказывалось о создании веб-служб с применением XFire (http://xfire.codehaus.org) и поддержке JAX-RPC, имеющейся в Spring. В то время эта тема пользовалась большой популярностью, но теперь обе технологии постепенно уходят в прошлое.

Технология JAX-RPC была вытеснена пришедшей ей на смену технологи- ей JAX-WS, ставшей стандартом разработки веб-служб на Java. Фрейм- ворк Spring последовал за общими тенденциями и также отказался от поддержки JAX-RPC в пользу JAX-WS. К счастью, поддержка JAX-WS в Spring очень близко отражает поддержку JAX-RPC. Например, компо- нент JaxWsPortProxyFactoryBean действует практически так же, как старый компонент JaxRpcPortProxyFactoryBean.

Технология XFire была моим любимым способом взаимодействий с веб- службами в Spring. Но разработка XFire остановилась на версии 1.2.6. Как полагают многие, версией XFire 2 стал проект Apache CXF (http://cxf. apache.org). Поэтому, если вы предпочитаете использовать XFire, поду- майте о переходе на проект Apache CXF. Apache CXF – намного более амбициозный проект, чем XFire, однако его изучение выходит далеко за рамки данной книги.

Поскольку одной из моих целей в этом издании было обеспечить мак- симальную актуальность информации, я решил оставить в стороне тех- нологии JAX-RPC и XFire. Если вам будет интересна любая из этих тем, рекомендую обратиться ко второму изданию книги «Spring in Action». В ней затрагиваются обе темы, а возможности JAX-RPC и XFire с тех пор изменились совсем немного.

В этом разделе мы еще раз вернемся к примеру службы Spitter. Но на этот раз она будет реализована и использована как веб-служба с применением поддержки JAX-WS в Spring. Начнем со знакомства с особенностями создания веб-службы JAX-WS в Spring.

Источник:   Уоллс К., Spring в действии. – М.: ДМК Пресс, 2013. – 752 с.: ил.

По теме:

  • Комментарии