Java Platform, Enterprise Edition (Java EE) 8
Учебник по Java EE

Назад Вперёд Содержание

Поддержка веб-сервисов

Веб-сервисы — это корпоративные веб-приложения, которые используют открытые стандарты на основе XML и транспортные протоколы для обмена данными с вызывающими их клиентами. Платформа Java EE предоставляет XML API и инструменты, необходимые для быстрого проектирования, разработки, тестирования и развёртывания веб-сервисов и клиентов, которые полностью совместимы с веб-сервисами и клиентами, работающими как на платформах на основе Java, так и на других платформах.

Для написания веб-сервисов и клиентов с API Java EE XML всё, что вам нужно сделать, это передать данные в параметрах вызова методов и обработать данные, полученные в ответ. Для документоориентированных веб-сервисов вы отправляете документы с данными в сервис и получаете документ с данными от сервиса. Нет необходимости в низкоуровневом программировании, потому что реализации XML API выполняют работу по преобразованию данных приложения в поток данных на основе XML, который отправляется через стандартизированные транспортные протоколы на основе XML. Эти основанные на XML стандарты и протоколы представлены в следующих разделах.

Перевод данных в стандартизированный поток на основе XML — именно это делает веб-сервисы и клиенты, написанные с API Java EE XML, полностью совместимыми. Это не обязательно означает, что транспортируемые данные включают в себя теги XML, поскольку транспортируемые данные сами по себе могут быть простым текстом, данными XML или любыми бинарными данными, такими как аудио, видео, карты, файлы программ, файлы компьютерного проектирования (CAD), документы и тому подобное. В следующем разделе представлен XML и объясняется, как бизнес-партнёры могут использовать теги и схемы XML для эффективного обмена данными.

XML

Extensible Markup Language (XML) — это кроссплатформенный, расширяемый текстовый стандарт для представления данных. Стороны, обменивающиеся данными XML, могут создавать свои собственные теги для описания данных, настраивать схемы для указания, какие теги могут использоваться в конкретном виде XML-документа, и использовать таблицы стилей XML для управления отображением и обработкой данных.

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

  • Одна компания может разместить информацию о ценах в XML и через программу перевода XML в HTML публиковать прайс-листы в своей внутренней сети.

  • Партнёрская компания может передавать информацию о ценах в XML и через утилиту создавать маркетинговые презентации.

  • Другая компания может считывать информацию о ценах в XML в приложение для обработки.

Транспортный протокол SOAP

Клиентские запросы и ответы веб-сервисов передаются в виде сообщений SOAP (Simple Object Access Protocol) по HTTP для обеспечения полностью совместимого обмена между клиентами и веб-слервисами, работающими на разных платформах и в разных местах в Интернете. HTTP является общепринятым стандартом запросов и ответов при обмене текстовыми сообщениями через Интернет, а SOAP — это протокол на основе XML, соответствующий модели запросов и ответов HTTP.

SOAP-часть транспортируемого сообщения выполняет следующие действия:

  • Определяет конверт (на основе XML) для описания содержимого сообщения и инструкций к его обработке

  • Включает правила кодирования (на основе XML) типов данных сообщения, специфичных для приложения

  • Определяет соглашение (на основе XML) об отправке запроса удалённому сервису и получении от него ответа

Стандарт формата WSDL

Язык описания веб-сервисов (WSDL) — это стандартизированный формат XML для описания сетевых сервисов. Описание включает в себя название сервиса, местоположение сервиса и способы связи с сервисом. Описания сервисов в виде WSDL можно публиковать в Интернете. GlassFish Server предоставляет инструмент для генерации спецификации WSDL веб-сервиса, использующего удалённые вызовы процедур для связи с клиентами.


Назад Вперёд Содержание
Логотип Oracle  Copyright © 2017, Oracle и/или её дочерних компаний. Все права защищены. Версия перевода 1.0.5 (Java EE Tutorial — русскоязычная версия)