🗊Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru) 9 ноября 2007

Категория: Технологии
Нажмите для полного просмотра!
Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №1Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №2Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №3Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №4Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №5Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №6Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №7Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №8Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №9Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №10Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №11Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №12Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №13Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №14Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №15Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №16Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №17Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №18Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №19Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №20Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №21Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №22Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №23Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №24Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №25Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №26Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB  Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)  9 ноября 2007, слайд №27

Содержание

Вы можете ознакомиться и скачать Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru) 9 ноября 2007. Презентация содержит 27 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB
Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru)
9 ноября 2007
Описание слайда:
Технология создания веб-сервисов на базе стандарта JAX-WS & JAXB Малышкин Фёдор (fedor.malyshkin@magnetosoft.ru) 9 ноября 2007

Слайд 2





Введение
Веб-сервис – это метод коммуникации с использованием огромного количества протоколов и данными в виде структурированного XML.
Название пошло от основного протокола передачи, использовавшегося на заре создания технологии – HTTP.
Сейчас в качестве протоколов передачи кроме HTTP, могут использоваться JMS (протокол передачи сообщений Java), SMTP, TCP…
Даже данные могут передаваться не в виде XML.
Так что понятие «веб-сервис» имеет очень расплывчатое значение на сегодняшний день и включает в себя огромное количество понятий.
Но разговор будет идти о стандарте описания веб-сервиса – о WSDL…
Описание слайда:
Введение Веб-сервис – это метод коммуникации с использованием огромного количества протоколов и данными в виде структурированного XML. Название пошло от основного протокола передачи, использовавшегося на заре создания технологии – HTTP. Сейчас в качестве протоколов передачи кроме HTTP, могут использоваться JMS (протокол передачи сообщений Java), SMTP, TCP… Даже данные могут передаваться не в виде XML. Так что понятие «веб-сервис» имеет очень расплывчатое значение на сегодняшний день и включает в себя огромное количество понятий. Но разговор будет идти о стандарте описания веб-сервиса – о WSDL…

Слайд 3





WSDL
WSDL – Web Service Description Language.
WSDL является XML словарём, который позволяет описать веб-сервис в языке независимом от платформы и от реализации.
Данная лекция описывает стандарт WSDL 1.1, который доступен по адресу [TODO].
Описание слайда:
WSDL WSDL – Web Service Description Language. WSDL является XML словарём, который позволяет описать веб-сервис в языке независимом от платформы и от реализации. Данная лекция описывает стандарт WSDL 1.1, который доступен по адресу [TODO].

Слайд 4





Логическая структура WSDL
<wsdl:definitions ....>
    <!– Импорт определений из других источников -->
    <wsdl:import ..../>
    <!– Определение типов используемых только в этом WSDL -->
    <wsdl:types ..../>
   <!– Определение сообщений используемых веб-сервисом -->
    <wsdl:message .../>
    <!– Определение интерфейсов и операций -->
    <wsdl:portType .../>
    <!– Привязка интерфейсов и операций к конкретному протоколу -->
    <wsdl:binding ..../>
    <!– Определение сервиса как коллекции интерфейсов и определение адреса сервиса -->
    <wsdl:service ..../>
</wsdl:definitions>
Описание слайда:
Логическая структура WSDL <wsdl:definitions ....> <!– Импорт определений из других источников --> <wsdl:import ..../> <!– Определение типов используемых только в этом WSDL --> <wsdl:types ..../> <!– Определение сообщений используемых веб-сервисом --> <wsdl:message .../> <!– Определение интерфейсов и операций --> <wsdl:portType .../> <!– Привязка интерфейсов и операций к конкретному протоколу --> <wsdl:binding ..../> <!– Определение сервиса как коллекции интерфейсов и определение адреса сервиса --> <wsdl:service ..../> </wsdl:definitions>

Слайд 5





Элементы WSDL
import – позволяет частям веб-сервиса быть распределёнными между несколькими файлами и быть скомпонованными в различной конфигурации в зависимости от потребностей авторов веб-сервиса. 
Использование данной техники распространено в крупных проектах, многие веб-сервисы имеют общие типы данных и отличаются только в деталях реализации или привязки к протоколу.
Описание слайда:
Элементы WSDL import – позволяет частям веб-сервиса быть распределёнными между несколькими файлами и быть скомпонованными в различной конфигурации в зависимости от потребностей авторов веб-сервиса. Использование данной техники распространено в крупных проектах, многие веб-сервисы имеют общие типы данных и отличаются только в деталях реализации или привязки к протоколу.

Слайд 6





Элементы WSDL
types – определяет типы используемые веб-сервисами.
<types>
<xs:complexType name="requestHeaderType">
	<xs:all>
		<xs:element name="sessionId" type="xs:string">
	</xs:all>
</xs:complexType>
<xs:complexType name="responseHeaderType">
	<xs:all>
		<xs:element name="sessionId" type="xs:string">
		</xs:element>
	</xs:all>
</xs:complexType>
…..
Описание слайда:
Элементы WSDL types – определяет типы используемые веб-сервисами. <types> <xs:complexType name="requestHeaderType"> <xs:all> <xs:element name="sessionId" type="xs:string"> </xs:all> </xs:complexType> <xs:complexType name="responseHeaderType"> <xs:all> <xs:element name="sessionId" type="xs:string"> </xs:element> </xs:all> </xs:complexType> …..

Слайд 7





Элементы WSDL
types – определяет типы используемые веб-сервисами.
Описание слайда:
Элементы WSDL types – определяет типы используемые веб-сервисами.

Слайд 8





Элементы WSDL
message  - описывает данные, которые путешествуют между веб-сервисом и клиентом в терминах, описанных в элементе Types.
<message name="startSessionRequest">
	<part name="request" element="tns:startSessionRequest"/>
</message>
<message name="startSessionResponse">
	<part name="response" element="tns:startSessionResponse"/>
</message>
<message name="getRegionImageRequest">
	<part name="request" element="tns:getRegionImageRequest"/>
</message>…
Описание слайда:
Элементы WSDL message - описывает данные, которые путешествуют между веб-сервисом и клиентом в терминах, описанных в элементе Types. <message name="startSessionRequest"> <part name="request" element="tns:startSessionRequest"/> </message> <message name="startSessionResponse"> <part name="response" element="tns:startSessionResponse"/> </message> <message name="getRegionImageRequest"> <part name="request" element="tns:getRegionImageRequest"/> </message>…

Слайд 9





Элементы WSDL
portType – определяет опреации, которые веб-сервис обеспечивает.
<portType name="GPSMonitorScreenProjectionEndpoint">
	<operation name="startSession">
		<input message="tns:startSessionRequest"/>
		<output message="tns:startSessionResponse"/>
	</operation>
	<operation name="addRoute">
		<input message="tns:addRouteRequest"/>
		<output message="tns:addRouteResponse"/>
		<fault name="fault" message="tns:addRouteFault"/>
	</operation>
…
Описание слайда:
Элементы WSDL portType – определяет опреации, которые веб-сервис обеспечивает. <portType name="GPSMonitorScreenProjectionEndpoint"> <operation name="startSession"> <input message="tns:startSessionRequest"/> <output message="tns:startSessionResponse"/> </operation> <operation name="addRoute"> <input message="tns:addRouteRequest"/> <output message="tns:addRouteResponse"/> <fault name="fault" message="tns:addRouteFault"/> </operation> …

Слайд 10





Элементы WSDL
binding – определяет, как операции и сообщения, описанные в message и portType, привязываются к конкретному протоколу.
<binding name="GPSMonitorScreenProjectionEndpointBinding" type="tns:GPSMonitorScreenProjectionEndpoint">
	<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
	<operation name="startSession">
		<soap:operation/>
		<input><soap:body use="literal"/></input>
		<output><soap:body use="literal"/></output>
	</operation>
	<operation name="addRoute"><soap:operation/>
…
Описание слайда:
Элементы WSDL binding – определяет, как операции и сообщения, описанные в message и portType, привязываются к конкретному протоколу. <binding name="GPSMonitorScreenProjectionEndpointBinding" type="tns:GPSMonitorScreenProjectionEndpoint"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="startSession"> <soap:operation/> <input><soap:body use="literal"/></input> <output><soap:body use="literal"/></output> </operation> <operation name="addRoute"><soap:operation/> …

Слайд 11





Элементы WSDL
 service – группирует ранее описанные порты и этим определяет сервис.
<service name="GPSMonitorScreenProjectionService">
	<port name="GPSMonitorScreenProjectionEndpointPort" binding="tns:GPSMonitorScreenProjectionEndpointBinding">
		<soap:address location="http://mg-sv01/"/>
	</port>
</service>
Описание слайда:
Элементы WSDL service – группирует ранее описанные порты и этим определяет сервис. <service name="GPSMonitorScreenProjectionService"> <port name="GPSMonitorScreenProjectionEndpointPort" binding="tns:GPSMonitorScreenProjectionEndpointBinding"> <soap:address location="http://mg-sv01/"/> </port> </service>

Слайд 12





Разработка «обычных» 
веб-сервисов 
Класс Java:
@WebService
public class UsualWS {
	@WebMethod
	public String method01(String data) {
		// парсинг XML
		// работа над данными
		String result = результат работы
		return result;
	}
}
Описание слайда:
Разработка «обычных» веб-сервисов Класс Java: @WebService public class UsualWS { @WebMethod public String method01(String data) { // парсинг XML // работа над данными String result = результат работы return result; } }

Слайд 13





Разработка «обычных» 
веб-сервисов
Генерация с помощью WSGEN необходимых артефактов и WSDL
Развёртывание
И вызов через клиента или другое средство. Например через XMLSpy:
Описание слайда:
Разработка «обычных» веб-сервисов Генерация с помощью WSGEN необходимых артефактов и WSDL Развёртывание И вызов через клиента или другое средство. Например через XMLSpy:

Слайд 14





Потери «обычных» веб-сервисов
«Обычные» веб-сервисами отличаются от «нормальных» только одним – отсутствием информации о структуре передаваемого XML.
Информация о том, что передаётся и в каком виде, должна быть у пользователя веб-сервиса ЗАРАНЕЕ. Использовать веб-сервис без этого не предоставляется возможным.
Описание слайда:
Потери «обычных» веб-сервисов «Обычные» веб-сервисами отличаются от «нормальных» только одним – отсутствием информации о структуре передаваемого XML. Информация о том, что передаётся и в каком виде, должна быть у пользователя веб-сервиса ЗАРАНЕЕ. Использовать веб-сервис без этого не предоставляется возможным.

Слайд 15





Пример «стандартного» 
веб-сервиса
Загружаем WSDL «нормального» веб-сервиса в XMLSpy и пробуем вызвать.
Описание слайда:
Пример «стандартного» веб-сервиса Загружаем WSDL «нормального» веб-сервиса в XMLSpy и пробуем вызвать.

Слайд 16





Преимущества «стандартных»
веб-сервисов
Доступ к информации о структуре XML на стадии анализа веб-сервиса.
Чёткое описание веб-сервиса на уровне интерфейсов взаимодействия.
Возможность генерации клиента другим программистом независимо от автора.
Совместимость клиента и сервиса (изменении сервиса в рамках допустимого).
Возможность генерации специальных класса для указанных типов, облегчающих работу с XML.
Устранение необходимости работы экранирования строк, на наличие служебных символов.
Описание слайда:
Преимущества «стандартных» веб-сервисов Доступ к информации о структуре XML на стадии анализа веб-сервиса. Чёткое описание веб-сервиса на уровне интерфейсов взаимодействия. Возможность генерации клиента другим программистом независимо от автора. Совместимость клиента и сервиса (изменении сервиса в рамках допустимого). Возможность генерации специальных класса для указанных типов, облегчающих работу с XML. Устранение необходимости работы экранирования строк, на наличие служебных символов.

Слайд 17





Пример сгенерированного клиента для «стандартного» веб-сервиса
@WebMethod
@WebResult(name = "addRouteResponse", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "response")
public AddRouteResponseType addRoute(@WebParam(name = "addRouteRequest", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "request")
        AddRouteRequestType request)
        throws AddRouteFault;
@WebMethod
@WebResult(name = "getScaleResponse", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "response")
public ScaleResponseType getScale(@WebParam ( name = "getScaleRequest", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "request")
        GetScaleRequest request)
        throws GetScaleFault;
Описание слайда:
Пример сгенерированного клиента для «стандартного» веб-сервиса @WebMethod @WebResult(name = "addRouteResponse", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "response") public AddRouteResponseType addRoute(@WebParam(name = "addRouteRequest", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "request") AddRouteRequestType request) throws AddRouteFault; @WebMethod @WebResult(name = "getScaleResponse", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "response") public ScaleResponseType getScale(@WebParam ( name = "getScaleRequest", targetNamespace = "http://gpsmonitor.net.magnetosoft.ru/", partName = "request") GetScaleRequest request) throws GetScaleFault;

Слайд 18





Пример сгенерированного клиента для «стандартного» веб-сервиса
Каждый метод имеет в качестве параметров и возвращаемого результат сгенерированные классы, обрамлённые JAXB аннотациями.
При вызове метода классы с наполненными данными преобразуются в XML, а результат из XML разбирается в те же сгенерированные классы.
Как результат - необходимость работы с XML, переносящимся между веб-сервисами, отпадает полностью.
Описание слайда:
Пример сгенерированного клиента для «стандартного» веб-сервиса Каждый метод имеет в качестве параметров и возвращаемого результат сгенерированные классы, обрамлённые JAXB аннотациями. При вызове метода классы с наполненными данными преобразуются в XML, а результат из XML разбирается в те же сгенерированные классы. Как результат - необходимость работы с XML, переносящимся между веб-сервисами, отпадает полностью.

Слайд 19





Создание «стандартного» веб-сервиса. Вариант 1.
Создание WSDL
Генерация артефактов с помощью WSIMPORT
Создание реализации сгенерированного интерфейса сервиса
P.S.: Данный вариант детально не рассматривается, так как требует детального знания языка описания XML – «XML Schema». Именно на его основе сделаны модули «Search», «Catalogue» платформы MAGNET.
Описание слайда:
Создание «стандартного» веб-сервиса. Вариант 1. Создание WSDL Генерация артефактов с помощью WSIMPORT Создание реализации сгенерированного интерфейса сервиса P.S.: Данный вариант детально не рассматривается, так как требует детального знания языка описания XML – «XML Schema». Именно на его основе сделаны модули «Search», «Catalogue» платформы MAGNET.

Слайд 20





Создание «стандартного» веб-сервиса. Вариант 2.
Создание классов носителей-данных для обмена. Классы носители-данных для обмена являются обычными JavaBean’ами, с аннотациями JAXB, которые определяют в какой XML они превратятся.
package edu.sefer.home.ws;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class XmlResult {
	@XmlElement
	int result;
	@XmlElement
	BigDecimal resultBD;
}
Описание слайда:
Создание «стандартного» веб-сервиса. Вариант 2. Создание классов носителей-данных для обмена. Классы носители-данных для обмена являются обычными JavaBean’ами, с аннотациями JAXB, которые определяют в какой XML они превратятся. package edu.sefer.home.ws; import java.math.BigDecimal; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class XmlResult { @XmlElement int result; @XmlElement BigDecimal resultBD; }

Слайд 21





Создание «стандартного» веб-сервиса. Вариант 2.
package edu.sefer.home.ws;
import java.util.Date;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class XmlData {
	@XmlElement
	String inputString;
	@XmlElement
	Date inputDate;
	@XmlElement
	int inputInt;
}
Описание слайда:
Создание «стандартного» веб-сервиса. Вариант 2. package edu.sefer.home.ws; import java.util.Date; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class XmlData { @XmlElement String inputString; @XmlElement Date inputDate; @XmlElement int inputInt; }

Слайд 22





Создание «стандартного» веб-сервиса. Вариант 2.
Создания класса веб-сервиса, подобно обычному подходу, но с входящими и выходящими параметрами в виде классов носителей-данных.
package edu.sefer.home.ws;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public class UsualWS {
	@WebMethod
	public XmlResult method01(XmlData data) {
		return null;
	}
}
Описание слайда:
Создание «стандартного» веб-сервиса. Вариант 2. Создания класса веб-сервиса, подобно обычному подходу, но с входящими и выходящими параметрами в виде классов носителей-данных. package edu.sefer.home.ws; import javax.jws.WebMethod; import javax.jws.WebService; @WebService public class UsualWS { @WebMethod public XmlResult method01(XmlData data) { return null; } }

Слайд 23





Создание «стандартного» веб-сервиса. Вариант 2.
Генерация артефактов с использованием WSGEN, подобно обычному подходу.
 <wsgen verbose="false" debug="true" keep="true" destdir="${project.build.outputDirectory}" resourcedestdir="${basedir}/target/wsdl" sourcedestdir="${project.build.sourceDirectory}" sei="edu.sefer.home.ws.UsualWS" genwsdl="true">
	<classpath>
		<path refid="jwdp.classpath"/>
		<pathelement location="${project.build.directory}/classes"/>
	</classpath>
</wsgen>
Описание слайда:
Создание «стандартного» веб-сервиса. Вариант 2. Генерация артефактов с использованием WSGEN, подобно обычному подходу. <wsgen verbose="false" debug="true" keep="true" destdir="${project.build.outputDirectory}" resourcedestdir="${basedir}/target/wsdl" sourcedestdir="${project.build.sourceDirectory}" sei="edu.sefer.home.ws.UsualWS" genwsdl="true"> <classpath> <path refid="jwdp.classpath"/> <pathelement location="${project.build.directory}/classes"/> </classpath> </wsgen>

Слайд 24





Создание «стандартного» веб-сервиса. Вариант 2.
Развёртывание и вызов…
Описание слайда:
Создание «стандартного» веб-сервиса. Вариант 2. Развёртывание и вызов…

Слайд 25





Создание «стандартного» веб-сервиса. Вариант 3.
Генерация или создание WSDL схемы вручную.
Использование интерфейса «javax.xml.ws.Provider» на серверной стороне
Использование интерфейса «javax.xml.ws.Dispatch» на клиентской стороне
Использование типа «xsd:anyType» для описания ЛЮБОГО XML, если его структура не зафиксирована.
P.S.: Данный вариант детально не рассматривается, так как требует детального знания языка описания XML – «XML Schema» и деталей работы соответствующих интерфейсов. Но именно на его основе сделан модуль «EntityManager» платформы MAGNET.
Описание слайда:
Создание «стандартного» веб-сервиса. Вариант 3. Генерация или создание WSDL схемы вручную. Использование интерфейса «javax.xml.ws.Provider» на серверной стороне Использование интерфейса «javax.xml.ws.Dispatch» на клиентской стороне Использование типа «xsd:anyType» для описания ЛЮБОГО XML, если его структура не зафиксирована. P.S.: Данный вариант детально не рассматривается, так как требует детального знания языка описания XML – «XML Schema» и деталей работы соответствующих интерфейсов. Но именно на его основе сделан модуль «EntityManager» платформы MAGNET.

Слайд 26





Выводы
Варианты 1 и 2 наиболее удобны, если интерфейсы взаимодействия уже оговорены и устоялись.
Вариант же 3 позволяет передавать динамически компонуемый XML максимально быстро и использовать его максимально эффективно и гибко.
Хотя надо так же заметить, что при использовании некоторых подходов, передавать динамический XML можно и в вариантах 1 и 2. Но надо заметить, что дополнительная нагрузка (на обработку сообщений на уровне самой библиотеки) при этом возрастает многократно.
Описание слайда:
Выводы Варианты 1 и 2 наиболее удобны, если интерфейсы взаимодействия уже оговорены и устоялись. Вариант же 3 позволяет передавать динамически компонуемый XML максимально быстро и использовать его максимально эффективно и гибко. Хотя надо так же заметить, что при использовании некоторых подходов, передавать динамический XML можно и в вариантах 1 и 2. Но надо заметить, что дополнительная нагрузка (на обработку сообщений на уровне самой библиотеки) при этом возрастает многократно.

Слайд 27





Вопросы?
?
Описание слайда:
Вопросы? ?



Похожие презентации
Mypresentation.ru
Загрузить презентацию