Модели вызова Web-служб

В настоящее время в литературе широко обсуждается 2 модели вызова веб-служб: статическая и динамическая

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

Документ WSDL представляет собой соглашение между веб-службой и ее клиентом. Клиенту необходимо знать как была реализована веб-служба, какой язык программирования был использован и на какой платформе она работает.

Для создания Java интерфейса и Java класса, который реализует этот интерфейс используются различные части документов wsdl, которые скрывают детали службы от клиента. Для того, чтобы использовать статическую модель вызова необходимо выполнить 2 шага:

1.сгенерировать Java интерфейс, который будет представлять тип порта в документе wsdl

2.генерация класса заглушки, которая будет реализовывать интерфейс, сгененрированный в первом шаге и содержать реализацию протокольного связывания определенного в документе wsdl.

Диаграмма которая показывает структуру статического клиента веб-службы:

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: