APACHE CFX для разработки SOAP и REST веб-сервиса
Исследование средств фреймворка APACHE CFX для разработки SOAP и REST веб-сервиса
В настоящее время в связи с постоянным развитием технологий высокоскоростного доступа в Интернет важные компоненты бизнеса перемещаются в среду Интернет.
Системы типа банк-клиент, публичные сайты организаций, Интернет-магазины, новости, развлекательные и торговые площадки, блоги, государственные порталы являются обязательной составляющей Всемирной сети. На сегодняшний день актуальна программная взаимодействие между различными веб-системами, инструментом организации которой является Веб-сервисы. Хотя платформа Java содержит средства разработки SOAP и REST веб-сервисов, все же большую функциональность и удобство демонстрируют специальные фреймворки, например. фреймворк Apache CFX.
Целью данной работы является исследование и применение на практике разработки SOAP и REST веб-сервисов с использованием средств фреймворка Apache CFX. Для достижения данной цели исследования были проведены в несколько этапов. На первом этапе было изучено сервис-ориентированную архитектуру приложений и принципы работы Веб-сервисов. В нем также были рассмотрены классификации Веб-сервисов, использование языка разметки XML для их конфигурирования, протокол Веб-сервисов SOAP, язык описания веб-сервисов WSDL, инструмент публикации Веб-сервисов UDDI, архитектурный стиль REST, формат сообщений JSON и спецификацию WS-Addressing.
На втором этапе исследованы поддержку базовых спецификаций Веб-сервисов технологиями Java и изучены среды выполнения веб-сервисов на платформе Java: JRE, серверы приложений, веб-сервисы на основе JAXM и SAAJ, спецификация парсинга XML JAXP, спецификация JAXB.
На третьем этапе была изучена реализация спецификаций SOAP и RESTful в фреймворка Apache CXF
Подробно исследованы спецификации JAX-WS, как расширение JAX-RPC, модель программирования JAX-WS на стороне сервера и клиента. Для архитектурного стиля REST рассмотрены спецификация JAX-RS, язык описания сервисов WADL и модель программирования и развертывания JAX-WS сервиса и клиента.
С целью исследования особенностей реализации поддержки фреймворком Apache CFX Веб-сервисов SOAP и RESTful был разработан приложение, которое представляет собой информационную систему, ведет учет успеваемости студентов университета. Предусмотрена разработка Веб-сервисов такой системы для получения данных об успеваемости студентов группы, успеваемость студентов по отдельной дисциплиной и другие. При этом реализация Веб-сервисов выполнена как на основе протокола SOAP, так и с использованием архитектурного стиля REST. С помощью разработанного программного клиента выполнено организацию программного взаимодействия с веб-сервисами и исследованы ее особенности для двух реализаций. В работе демонстрируются преимущества и недостатки каждого из подходов.