Pod terminem Usługi Web należy rozumieć zbiór małych funkcjonalnych modułów pracuj?cych w sieci i
udostępniaj?cych okre?lone usługi innym systemom czy też innym webservices. Takimi modułami mog? być np.
usługi pogodowe, translatory językowe czy mechanizmy przeliczaj?ce waluty, a wykorzystywane mog? być przez
inne usługi udostępniaj?ce usługi bardziej złożone. Webservices zwykle nie będ? stanowić samodzielnych
aplikacji, a jedynie stanowić interfejs komunikacyjny pomiędzy klientami z sieci a systemami biznesowymi.<br><br>
Wyj?tkow? sił? webservices jest wykorzystanie istniej?cych i szeroko stosowanych technologii tj.
protokołu HTTP i języka XML. HTTP jest jednym z najbardziej rozpowszechnionych protokołów w sieci, co umożliwia
natychmiastowe wykorzystanie tej platformy do przesyłania komunikatów. XML dostarcza metajęzyk za pomoc?
którego porozumiewaj? się klienci z usługami oraz poszczególne komponenty. Id?c dalej, przy budowie i
wykorzystaniu webservices nie ma znaczenia w jakiej technologii jest napisana usługa, na jakim systemie
operacyjnym pracuje. Pełn? interoperatywno?ć zapewnia protokół SOAP, który ma aspiracje stać się następc?
technik typu CORBA, RMI czy DCOM.<br><br>
SOAP
SOAP to protokół definiuj?cy formaty komunikatów, sposoby wysyłania komunikatów i odbierania odpowiedzi,
kodowania danych w języku XML oraz gramatykę XML służ?c? do: okre?lania nazw metod, definiowania typów
parametrów i zwracanych warto?ci oraz opisu typów. SOAP okre?la także mechanizmy wywoływania zdalnych
procedur (RPC) przy pomocy protokołu komunikacyjnego HTTP. ??dania SOAP s? wysyłane jako ż?dania HTTP
POST, choć do komunikacji może być wykorzystany jakikolwiek protokół transportowy.<br><br>
Cały proces wymiany komunikatów rozpoczyna się od zapytania SOAP wysłanego jako HTTP POST z typem
zawarto?ci text/xml i polem SOAPAction zawieraj?cym nazwę metody SOAP. W komunikacie jest także miejsce
na dane w postaci XML. Odbiornik na serwerze (np. servlet) kontroluje pole SOAPAction i w zależno?ci od
jego zawarto?ci podejmuje odpowiednie działania. Na podstawie tre?ci XML odnajdywana jest odpowiednia
usługa, która wykona metodę i zwróci rezultat. Następnie rezultat jest zwracany klientowi jako dokument
XML ze standardowym nagłówkiem HTTP i typem zawarto?ci text/xml.<br><br>
Podczas wymiany dużej ilo?ci komunikatów znacz?c? warto?ci? staje się wydajno?ć. W przeciwieństwie
do technologii typu CORBA, RMI czy DCOM gdzie dane transportowane s? w postaci binarnej (brak metadanych),
SOAP przesyła komunikaty czystym i otwartym XML. SOAP wraz z samoopisuj?cymi się danymi w XML umożliwia
łatwe i szybkie przystosowanie każdego systemu do wykorzystania stosowanej implemenntacji SOAP, co w
przypadku systemów binarnych sprawia duże problemy w zwi?zku z różnymi sposobami kodowania informacji.
Czas potrzebny na zakodowanie/odkodowanie komunikatu SOAP jest nieporównywalnie mały do czasu przesłania
takiego komunikatu przez sieć.<br><br>
UDDI
UDDI (Universal Description, Discovery and Integration Service) to usługa udostępniaj?ca klientom
mechanizmy dynamicznego wyszukiwania innych usług. UDDI stanowi interfejs umożliwiaj?cy dynamiczne
poł?czenie się z usług? udostępnian? przez innego usługodawcę. Rejestry UDDI zawieraj?:<br><br>
- informacje o webservices na bazie nazwy usługodawcy, jego adresu, kategorii biznesowej czy informacji technicznej itp., <br>
- operacje dotycz?ce usługi, tj., rejestracji, wyszukiwania i korzystania z usługi<br>
- szczegóły udostępniane przez niskopoziomowe API<br>
<br>
UDDI posiadaj? dwa rodzaje klientów: usługodawców publikuj?cych swoje usługi oraz klientów pragn?cych
skorzystać z tych usług. Warstwa UDDI leży nad protokołem SOAP, przez co komunikaty UDDI stanowi? obiekty
w komunikatach SOAP.<br><br>
WSDL
WSDL (Web Services Definition Language) jest nadzbiorem języka SDL, umożliwia twórcom usługi Web
opisanie co potrafi usługa, gdzie się znajduje i jak j? wywołać. Usługa Web może być pytana o listę
udostępnianych metod. OdpowiedĽ powinna zawierać opis w zrozumiałym formacie. Język WSDL jest przydatny
przy automatyzacji komunikacji pomiędzy usługami webservices umożliwiaj?c współgranie usług.<br><br>
DISCO
Protokół odnajdowania DISCO (Discovery) umożliwia odnajdowanie usług Web Services. Witryna internetowa
powinna opublikować dokumenty DISCO zawieraj?ce adresy URL oraz opisy WSDL dla udostępnianych usług web.
Dokumenty DISCO zawieraj? odniesienia do innych witryn oraz innych dokumentów DISCO co umożliwia
przeszukiwanie drzew katalogów itp.<br><br>
Powrót
|