Учебники

Spring WS — Обзор

Spring Web Services (Spring-WS) — один из проектов, разработанных Spring Community. Его основной задачей является создание управляемых документами веб-сервисов. Проект Spring Web Services упрощает разработку сервисов SOAP в первую очередь, предоставляет несколько способов создания гибких веб-сервисов, которые могут манипулировать полезными нагрузками XML различными способами.

Веб-сервисы Spring без проблем используют такие концепции Spring, как внедрение зависимостей и конфигурации. Spring-WS требует Spring 3.0 версии. При разработке сначала контракта мы начинаем с WSDL Contract, а затем будем использовать JAVA для реализации требуемого контракта.

В отличие от подхода «последний контракт», когда интерфейсы JAVA генерируют контракт WSDL / XSD. Контракт на основе WSDL остается независимым от реализации JAVA в подходе контракт-первый. В случае, если нам требуется изменить интерфейсы JAVA, нет необходимости сообщать об изменениях, внесенных в существующий контракт WSDL, пользователям веб-служб. Spring-WS стремится обеспечить слабую связь между контрактом WSDL и его реализацией на основе JAVA.

Характеристики

Ниже приведены функции веб-служб Spring.

  • Сопоставление XML с объектами — запросы на основе XML могут быть сопоставлены с любым объектом с использованием информации, хранящейся в полезной нагрузке сообщения, заголовке действия SOAP или с помощью выражения XPath.

  • Поддержка нескольких API для разбора XML — Помимо стандартных API JAXP (DOM, SAX, StAX) для разбора входящих XML-запросов, поддерживаются и другие библиотеки, такие как JDOM, dom4j, XOM.

  • Поддержка нескольких API для маршалирования XML — Spring Web Services поддерживает библиотеки JAXB 1 и 2, Castor, XMLBeans, JiBX и XStream, используя свой модуль сопоставления объектов / XML. Модуль Object / XML Mapping также можно использовать в коде не-веб-сервисов.

  • Конфигурации на основе Spring — Spring Web Services использует контексты приложения Spring для своих конфигураций, имеющих архитектуру, аналогичную Spring Spring MVC.

  • Интегрированный модуль WS-Security. Используя модуль WS-Security, вы можете подписывать, шифровать, дешифровать SOAP-сообщения или аутентифицировать их.

  • Поддержка Acegi Security. Используя реализацию WS-Security веб-служб Spring, можно настроить конфигурацию Acegi для ваших служб SOAP.

Сопоставление XML с объектами — запросы на основе XML могут быть сопоставлены с любым объектом с использованием информации, хранящейся в полезной нагрузке сообщения, заголовке действия SOAP или с помощью выражения XPath.

Поддержка нескольких API для разбора XML — Помимо стандартных API JAXP (DOM, SAX, StAX) для разбора входящих XML-запросов, поддерживаются и другие библиотеки, такие как JDOM, dom4j, XOM.

Поддержка нескольких API для маршалирования XML — Spring Web Services поддерживает библиотеки JAXB 1 и 2, Castor, XMLBeans, JiBX и XStream, используя свой модуль сопоставления объектов / XML. Модуль Object / XML Mapping также можно использовать в коде не-веб-сервисов.

Конфигурации на основе Spring — Spring Web Services использует контексты приложения Spring для своих конфигураций, имеющих архитектуру, аналогичную Spring Spring MVC.

Интегрированный модуль WS-Security. Используя модуль WS-Security, вы можете подписывать, шифровать, дешифровать SOAP-сообщения или аутентифицировать их.

Поддержка Acegi Security. Используя реализацию WS-Security веб-служб Spring, можно настроить конфигурацию Acegi для ваших служб SOAP.

Архитектура

Проект Spring-WS состоит из пяти основных модулей, которые описаны ниже.

Ядро Spring-WS — это основной модуль, который предоставляет центральные интерфейсы, такие как WebServiceMessage и SoapMessage , инфраструктуру на стороне сервера, мощные средства диспетчеризации сообщений и классы поддержки для реализации конечных точек веб-служб. Он также предоставляет клиентский клиент веб-службы в виде WebServiceTemplate .

Поддержка Spring-WS — этот модуль обеспечивает поддержку JMS, электронной почты и т. Д.

Spring-WS Security — этот модуль отвечает за обеспечение реализации WS-Security, интегрированной с основным модулем веб-служб. Используя этот модуль, мы можем добавлять основные токены, подписывать, шифровать и дешифровать SOAP-сообщения. Этот модуль позволяет использовать существующую реализацию безопасности Spring для аутентификации и авторизации.

Spring XML — этот модуль предоставляет классы поддержки XML для Spring Web Services. Этот модуль используется внутри среды Spring-WS.

Spring OXM — этот модуль предоставляет классы поддержки для XML и сопоставления объектов.