15
Уеб Услуги Станислав Овчаров Мусала Софт Стандарти и Видове уеб услуги Взаимодействие Популярни Java библиотеки

Уеб Услуги

  • Upload
    jolie

  • View
    114

  • Download
    1

Embed Size (px)

DESCRIPTION

Уеб Услуги. Стандарти и Видове уеб услуги Взаимодействие Популярни Java библиотеки. Станислав Овчаров Мусала Софт. Уеб услуги – същност. Какво е уеб услуга ? приложение/функционалност, която може да бъде публикувана, търсена и изпълнена по мрежата Уеб услугите са: - PowerPoint PPT Presentation

Citation preview

Page 1: Уеб Услуги

Уеб Услуги

Станислав ОвчаровМусала Софт

Стандарти и Видове уеб услугиВзаимодействиеПопулярни Java библиотеки

Page 2: Уеб Услуги

Уеб услуги – същност

• Какво е уеб услуга ?– приложение/функционалност, която може да

бъде публикувана, търсена и изпълнена по мрежата

• Уеб услугите са:– независими - използват HTTP и XML– самоописателни – в данните се съдържа и

тяхната дефиниция– публикувани (UDDI), дефинирани (WSDL) и

изпълнявани (SOAP)

Page 3: Уеб Услуги

SOAP (Simple Object Access Protocol)

• SOAP е протокол за отдалечен достъп до обекти, базиран на XML

• Примерно SOAP съобщение: <SOAP-ENV:Envelope

xmlns:SOAP-ENV=“http://schemas.xmlsoap.org/soap/envelope/”SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/

encoding/"> <SOAP-ENV:Body>

<OrderItem> <PartNumber>WIDGET204</PartNumber> <Quantity>7</Quantity> <CustomerID>C00215</CustomerID>

<OrderItem> </SOAP-ENV:Body>

</SOAP-ENV:Envelope>

Page 4: Уеб Услуги

SOAP – Важни характеристики

• Лек (lightweight) – изисква единствено възможност за получаване и изпращане на HTTP пакети и за обработка на XML

• Построен върху отворени технологии, не зависи от конкретен доставчик, няма доминиращ доставчик на SOAP

• Разширяем спрямо транспортния протокол и представянето на данните

• Насърчава създаването на слабо-обвързани разпределени приложения

Page 5: Уеб Услуги

Web Service Description Language (WSDL)

• WSDL е XML-базиран език за описание на структурата и достъпа до Уеб Услуги– WSDL е предназначен за машинна

(автоматична) обработка

• Важни характеристики– Разширяем

– Включва стандартни разширения за SOAP като формат на данни и HTTP като транспортен протокол

– Подходящ за дефиниране на синхронна и асинхронна комуникация

Page 6: Уеб Услуги

Видове Уеб Услуги

• Стил на уеб услугата– RPC style– Document style

• Представяне на данните (encoding)– Literal– Encoded

• SOAP Section 5 Encoding

Page 7: Уеб Услуги

Стил RPC

• RPC/Encoded <soap:body> <myMethod> <x xsi:type="xsd:int">5</x> </myMethod> </soap:body>

• RPC/Literal <soap:body> <myMethod> <x>5</x> </myMethod> </soap:body>

Page 8: Уеб Услуги

Стил Document

• Document/Literal <soap:body> <xElement>5</xElement> </soap:body>

• Document/Literal Wrapped <soap:body> <myMethod> <x>5</x> </myMethod> </soap:body>

Page 9: Уеб Услуги

Взаимодействие (Interoperability)

• Типове данни– числа, дати, масиви– сложни и специфични (custom) типове данни

• SOAP Section 5 Encoding– няма формален механизъм за описание и

верификация

• Свобода и недостатъчност на стандартите

Page 10: Уеб Услуги

Взаимодействие – Как да го постигнем

• Няма универсално решение

• Няколко съвета:– винаги използвайте WSDL– използвайте Literal Encoding (вместо SOAP

Section 5 Encoding)– използвайте Document Style (вместо RPC

Style)– използвайте само библиотеки (toolkits), които

се развиват и поддържат постоянно– очаквайте невалидни данни

Page 11: Уеб Услуги

Взаимодействие – усилия на индустрията

• Web Services Interoperability (WS-I) – http://www.ws-i.org/

• WS-I Basic Profile 1.0– забранява SOAP Encoding– задължава използването на HTTP POST

метод– забранява “solicit-response” и “notification”

WSDL операции– …..

Page 12: Уеб Услуги

Стандарти• Основните

– SOAP– WSDL– UDDI

• Допълнителни, ориентирани към специфични бизнес изизсквания– WS-Security– WS-Reliability – WS-Transaction– WS-Policy– WS-Inspection– …..– WS-Provisioning– …..

Page 13: Уеб Услуги

Уеб Услуги с Java - библиотеки

• Apache Axis – http://ws.apache.org/axis/

• IBM Emerging Technologies Toolkit (ETTK)– http://www.alphaworks.ibm.com/tech/ettk

• Web Services Invocation Framework (WSIF)– http://ws.apache.org/wsif/

• IBM WebSphere Studio– http://www-306.ibm.com/software/awdtools/studioappdev/

• Java Web Services Developer Pack (Java WSDP) – http://java.sun.com/webservices/jwsdp/index.jsp

Page 14: Уеб Услуги

Apache Axis

• Axis предлага инфраструктура за изграждане на SOAP агенти – клиенти и сървъри

• Axis включва:– самостоятелен SOAP сървър– SOAP сървър за J2EE Application Server (Tomcat)– широка поддръжка на WSDL– генериране на Java класове от WSDL– примерни програми

• Отворена и разширяема архитектура– Handlers

Page 15: Уеб Услуги

Уеб Услуги

Благодаря Ви за вниманието !

e-mail за контакти:[email protected]