Java API для обмена сообщениями XML - Java API for XML Messaging

В Java API для обмена сообщениями XML (JAXM) позволяет распределенное программное обеспечение приложения для общения с помощью XMLМЫЛО ). JAXM поддерживает как асинхронный, так и синхронный обмен сообщениями.

JAXM - один из Java XML программирование API

Обзор

В Java API для обмена сообщениями XML (JAXM) позволяет разработчикам использовать Обмен сообщениями XML с использованием платформы Java. Разработчики могут создавать и отправлять XML-сообщения через Интернет с помощью JAXM API.[1]

На следующем рисунке представлена ​​концептуальная взаимосвязь между JAXM и другими архитектурными элементами, необходимыми для обмена сообщениями между предприятиями через Интернет.

Кроме того, Java API для обмена сообщениями XML имеет несколько преимуществ перед Удаленный вызов процедур например следующие:

  • Односторонний (асинхронный) обмен сообщениями
  • Маршрутизация сообщения более чем одной стороне
  • Надежный обмен сообщениями с такими функциями, как гарантированная доставка

Полный JAXM API поставляется с двумя пакетами:[2]

  • javax.xml.soap: Этот пакет содержит API для создания и заполнения сообщения SOAP.
  • javax.xml.messaging: Этот пакет позволяет отправлять односторонние сообщения через поставщика сообщений.

Сообщения

Сообщения в JAXM - это сообщения XML, соответствующие предписанному формату и стандартам SOAP. Существует два основных типа сообщений SOAP: сообщения с вложениями и без них. Например, если вы хотите, чтобы ваше сообщение содержало изображение, вы должны отправить вложение с сообщением. API SAAJ предоставляет класс AttachmentPart для вложений в сообщениях SOAP.[3]

Подключения

Для отправки и получения всех сообщений SOAP требуется соединение. Соединение может идти к провайдеру обмена сообщениями или определенному месту назначения.[4]JAXM API предоставляет класс и интерфейс для представления двух типов соединений:

SOAP-соединение

SOAPConnection - это соединение точка-точка для отправки сообщений непосредственно удаленной стороне.[5] Объект SOAPConnection, представляющий двухточечное соединение, прост в создании и использовании. Для использования объекта SOAPConnection не нужно выполнять какую-либо конфигурацию, поскольку его не нужно запускать в контейнере сервлетов (например, Tomcat) или на сервере J2EE. Это единственный способ для клиента установить соединение без поставщика услуг.[6]

Подключение к провайдеру

Объект ProviderConnection представляет соединение с поставщиком сообщений. (В следующем разделе более подробно рассказывается о поставщиках сообщений.) Когда вы отправляете сообщение через объект ProviderConnection, сообщение отправляется поставщику сообщений. Провайдер обмена сообщениями пересылает сообщение, следуя инструкциям по маршрутизации сообщения, пока сообщение не попадет к провайдеру обмена сообщениями конечного получателя, который, в свою очередь, пересылает сообщение конечному получателю.[7]

Поставщики сообщений

Провайдер обмена сообщениями отслеживает сообщения и направляет их в нужное место назначения. Это служба, которая обрабатывает передачу и маршрутизацию сообщений.[8]

Когда использовать поставщика сообщений

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

Клиент может отправлять только сообщения типа запрос-ответ Клиент может действовать только в роли клиента.

Некоторые преимущества отказа от использования поставщика сообщений:

  • Приложение может быть написано на платформе J2SE.
  • Приложение не требуется развертывать в контейнере сервлетов или J2EE-контейнере.
  • Конфигурация не требуется[9]

Рекомендации

Смотрите также