Содержание
Возможно, вы видели мой предыдущий пост о звонке SOAP vs. REST . Сейчас компании переходят на сервисные вызовы REST, но большинство компаний все еще используют SOAP поверх REST. Этот учебник объясняет основы WSDL (язык описания веб-сервисов).
Если у вас есть какой-либо из нижеприведенных вопросов, то вы находитесь в правильном месте:
- Что такое язык описания веб-сервисов (WSDL)?
- Учебник по WSDL
- Язык описания веб-сервисов (WSDL)
- Примеры WSDL — Язык описания веб-сервисов
Язык описания веб-сервисов (WSDL)
В Java Web Development World WSDL — это формат XML для описания сетевых служб как набора конечных точек, работающих с сообщениями, содержащими либо документно-ориентированную, либо процедурно-ориентированную информацию. Операции и сообщения описываются абстрактно, а затем привязываются к конкретному сетевому протоколу и формату сообщения для определения конечной точки. Связанные конкретные конечные точки объединяются в абстрактные конечные точки (сервисы). WSDL является расширяемым, чтобы разрешить описание конечных точек и их сообщений независимо от того, какие форматы сообщений или сетевые протоколы используются для связи, однако единственные привязки, описанные в этом документе, описывают, как использовать WSDL в сочетании с SOAP 1.1 , HTTP GET / POST и MIME ,
Другой должен прочитать:
- Создание образца WSDL в Eclipse и создание клиента
- Как построить RESTful Сервис с Java с использованием JAX-RS и Джерси (Пример)
Другими словами: документ WSDL определяет службы как наборы сетевых конечных точек или ports , В WSDL абстрактное определение конечных точек и сообщений отделено от их конкретного сетевого развертывания или привязок формата данных. Это позволяет повторно использовать абстрактные определения: messages , которые являются абстрактными описаниями обмениваемых данных, и port types которые являются абстрактными коллекциями operations , Конкретные спецификации протокола и формата данных для определенного типа порта представляют собой повторно используемые binding , Порт определяется путем связывания сетевого адреса с повторно используемой привязкой, а набор портов определяет службу. Следовательно, документ WSDL использует следующие элементы в определении сетевых служб:
Types— контейнер для определений типов данных с использованием некоторой системы типов (такой какXSD).Message— абстрактное, типизированное определение передаваемых данных.Operation— абстрактное описание действия, поддерживаемого сервисом.Port Type— абстрактный набор операций, поддерживаемый одной или несколькими конечными точками.Binding— конкретный протокол и спецификация формата данных для конкретного типа порта.Port— одна конечная точка, определенная как комбинация привязки и сетевого адреса.Service— коллекция связанных конечных точек.
Пример: SOAP 1.1 Запрос / Ответ через HTTP
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
xml version = 1.0 ?>
< определений name = StockQuote
targetNamespace = http://example.com/stockquote.wsdl
xmlns : tns = http://example.com/stockquote.wsdl
xmlns : xsd1 = http://example.com/stockquote.xsd
xmlns : soap = http://schemas.xmlsoap.org/wsdl/soap/
xmlns = http://schemas.xmlsoap.org/wsdl/ >
< типы >
< schema targetNamespace = http://example.com/stockquote.xsd
xmlns = http://www.w3.org/2000/10/XMLSchema >
< element name = TradePriceRequest >
< complexType >
< все >
< element name = tickerSymbol type = string / >
< / all >
< / complexType >
< / element >
< element name = TradePrice >
< complexType >
< все >
< element name = цена type = float / >
< / all >
< / complexType >
< / element >
< / schema >
< / types >
< message name = GetLastTradePriceInput >
< part name = body element = xsd1: TradePriceRequest / >
< / message >
< message name = GetLastTradePriceOutput >
< part name = body element = xsd1: TradePrice / >
< / message >
< portType name = StockQuotePortType >
< операция name = GetLastTradePrice >
< input message = tns: GetLastTradePriceInput / >
< output message = tns: GetLastTradePriceOutput / >
< / операция >
< / portType >
< binding name = StockQuoteSoapBinding type = tns: StockQuotePortType >
< soap : binding style = document transport = http://schemas.xmlsoap.org/soap/http / >
< операция name = GetLastTradePrice >
< soap : operation soapAction = http://example.com/GetLastTradePrice / >
< вход >
< soap : body use = literal / >
< / input >
< выход >
< soap : body use = literal / >
< / output >
< / операция >
< / binding >
< service name = StockQuoteService >
< документация > Мой первый сервис < / Документация >
< port name = StockQuotePort binding = tns: StockQuoteBinding >
< soap : address location = http://example.com/stockquote / >
< / port >
< / service >
< / определения >
|
Шаблон фабричного дизайна объяснен с примером .
0.00 (0%) 0 votes








