Web Services. Technologie Biznesu Elektronicznego. Konrad Kunicki. Politechnika Wrocławska, Wydział Informatyki i Zarządzania



Podobne dokumenty
Web Services. Wojciech Mazur. 17 marca Politechnika Wrocławska Wydział Informatyki i Zarządzania

Programowanie komponentowe

SOA Web Services in Java

Komunikacja i wymiana danych

Rozproszone systemy Internetowe

Rozproszone systemy internetowe

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Automatyzacja procesów biznesowych Andrzej Sobecki. ESB Enterprise service bus

Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI

UDDI & WSDL wykład 10

Tworzenie i wykorzystanie usług sieciowych

Programowanie w języku Java. Wykład 13: Java Platform, Enterprise Edition (Java EE)

MINISTERSTWO FINANSÓW PLAN INTEGRACJI SYSTEMU ZAŁĄCZNIK NR 6 SEAP SPECYFIKACJA KANAŁ DLA PODMIOTÓW ZEWNĘTRZNYCH PL PROJEKT ECIP/SEAP

Web Services. Bartłomiej Świercz. Łódź, 2 grudnia 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Web Services

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

Stan zaawansowania prac dotyczących zamówienia na opracowanie i wdrożenie rdzenia systemu e Urząd.

Dostęp do komponentów EJB przez usługi Web Services

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Wybrane działy Informatyki Stosowanej

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Programowanie Komponentowe WebAPI

Część I -ebxml. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Zaawansowane aplikacje internetowe. Wykład 6. Wprowadzenie do Web Services. wykład prowadzi: Maciej Zakrzewicz. Web Services

Ministerstwo Finansów

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor

Oprogramowanie dostosowane do potrzeb użytkownika. Skrócenie czasu wejścia na rynek

GS2TelCOMM. Rozszerzenie do TelCOMM 2.0. Opracował: Michał Siatkowski Zatwierdził: IMIĘ I NAZWISKO

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Wykład 1 Inżynieria Oprogramowania

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

Wybrane działy Informatyki Stosowanej

Architektury usług internetowych. Tomasz Boiński Mariusz Matuszek

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

5.14 JSP - Przykład z obiektami sesji Podsumowanie Słownik Zadanie... 86

CENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu.

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2011/2012. Architektura zorientowana na usługi

Zaawansowane narzędzia programowania rozproszonego

1 Wprowadzenie do J2EE

Programowanie współbieżne i rozproszone

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

System zarządzający grami programistycznymi Meridius

Web Services wykład 9

Serwery. Autorzy: Karol Czosnowski Mateusz Kaźmierczak

Usługi danych przestrzennych w GEOPORTAL-u. Marek Szulc , Warszawa

Usługi sieciowe (Web Services)

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy

problem w określonym kontekście siły istotę jego rozwiązania

OfficeObjects e-forms

SIMON SAYS ARCHITECTURE! Usługi zdalne. Technologie, techniki i praktyki implementacji

OSGi Agata Hejmej

Wybrane problemy modelu usługowego

Wprowadzenie do usług internetowych

ActiveXperts SMS Messaging Server

Usługi WWW. dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska Opole zlipinski@math.uni.opole.pl

Dotacje na innowacje - Inwestujemy w Waszą przyszłość ZAPYTANIE OFERTOWE

Bazy danych 2. Wykład 1

Otwarte protokoły wymiany informacji w systemach ITS

Web Tools Platform. Adam Kruszewski

Serwery LDAP w środowisku produktów w Oracle

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE

Wybrane działy Informatyki Stosowanej

GEOPORTAL 2. Broker INSPIRE Broker krajowy Broker branżowy. Eliza Asendy, Marek Szulc , Warszawa

Page 1. Architektura systemów GIS. Architektura klient-serwer. Geoinformaacyjne usługi sieciowe DESKTOP. dr inż. Adam Iwaniak

Część I Rozpoczęcie pracy z usługami Reporting Services

EJB 3.0 (Enterprise JavaBeans 3.0)

OPERATOR SYSTEMU PRZESYŁOWEGO

serwisy W*S ERDAS APOLLO 2009

Rok akademicki: 2014/2015 Kod: EAR IS-s Punkty ECTS: 4. Kierunek: Automatyka i Robotyka Specjalność: Informatyka w sterowaniu i zarządzaniu

OpenLaszlo. OpenLaszlo

Ekspert MS SQL Server Oferta nr 00/08

Zapytanie ofertowe

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

PLATFORMA USŁUGOWA - OGÓLNA KONCEPCJA SYSTEMU

Web Services w połączeniu z aplikacjami uruchamianymi na urządzeniach mobilnych

SZKOLENIE TWORZENIE SYSTEMÓW

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

JBoss: MetaMatrix, Mobicents, Seam, Rools, ESB

<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>

Wybrane działy Informatyki Stosowanej

Web Services / Gridy

Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Protokoły sieciowe - TCP/IP

Dotacje na innowacje - Inwestujemy w Waszą przyszłość ZAPYTANIE OFERTOWE

Zagadnienia projektowania aplikacji J2EE

Platforma epuap. Igor Bednarski kierownik projektu epuap2 CPI MSWiA. Kraków, r.

Dokumentacja projektu QUAIKE Architektura oprogramowania

Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS. (c) 2008 Grupa SPOT SJ

Korporacyjna Magistrala Usług na przykładzie Mule ESB

Transkrypt:

Standardy Technologie Biznesu Elektronicznego Politechnika Wrocławska, Wydział Informatyki i Zarządzania Wrocław, 26 kwiecień 2005

Standardy Plan prezentacji 1 Wprowadzenie 2 Standardy 3 4 5

Standardy Definicje (1) Pojęcia podstawowe Zastosowania Architektura wg IBM Samodzielne modularne aplikacje, które mogą być opisane, opublikowane, zlokalizowane i wywoływane przez sieć - generalnie przez WWW. wg Microsoft Programowalna logika aplikacji dostępna za pomocą standardowych protokołów Internetu. wg Gartner Group Komponenty programowe reprezentujące funkcje biznesowe (lub usługi biznesowe) dostępne dla innych aplikacji za pośrednictwem sieci publicznej i przy użyciu ogólnie dostępnych, powszechnych protokołów internetowych.

Standardy Definicje (2) Pojęcia podstawowe Zastosowania Architektura Definicja wg Webservices.org: Hermetyzowane, luźno skojarzone, udokumentowane funkcje, oferowane poprzez standardowe protokoły. Hermetyzowane (ang. encapsulated) - implementacja metody nigdy nie jest widziana z zewnątrz. Luźno skojarzone (ang. loosely coupled) - modyfikowanie danej implementacji metody nie generuje problemu propagacji zmiany. Udokumentowane (ang. contracted) - istnieją publicznie dostępne opisy zachowania metod oraz specyfikacja ich interfejsów.

Standardy Właściwości Pojęcia podstawowe Zastosowania Architektura Rodzaje usług internetowych Usługi niematerialne (udostepniąjace informacje) Usługi mające odzwierciedlenie w świecie rzeczywistym (np. autoryzacja karty kredytowej) Sposoby tworzenie usług Zaczynając od projektu oraz opisu usługi, następnie generując odpowiedni kod i na końcu implementując funckjonalność. Obudowując odpowiednim interfejsem już istniejące komponenty

Standardy Zastosowania (1) Pojęcia podstawowe Zastosowania Architektura Komunikacja z partnerami biznesowymi w znacznym stopniu wspierają i umożliwiają interakcje B2B. Systemy informatyczne należące do różnych organizacji, mogą się bez przeszkód komunikować. Dzięki wykorzystaniu protokołu HTTP, brak przeszkód ze strony zapór. Integracja systemów wewnątrz przedsiębiorstwa Przy użyciu usług można z łatwością dokonać integracji różnych heterogenicznych systemów w przedsiębiorstwie. umożliwiają aplikacjom wymienianie się informacjami za pośrednictwem Internetu, niezależnie od systemu operacyjnego i oprogramowania.

Standardy Zastosowania (2) Pojęcia podstawowe Zastosowania Architektura Dodatkowe możliwości dla przedsiębiorstw Dzięki możliwości publikacji usług i udostępniania ich innym firmom, programiści mogą wybierać pomiędzy tworzeniem własnych komponentów, a korzystaniem z już stworzonych. Z drugiej strony istnieje możliwość oferowania własnych usług innym, zwiększając tym samym liczbę źródeł przychodu.

Standardy Architektura Pojęcia podstawowe Zastosowania Architektura

Standardy Założenia architektoniczne Pojęcia podstawowe Zastosowania Architektura Usługi oparte są na XML, uniwersalnym języku internetowej wymiany danych Komunikaty przesyłane za pomocą protokołu SOAP Rysunek: Stos protokołów

Standardy Przedstawienie standardów Przedstawienie standardów SOAP WSDL UDDI Podstawę dla usług stanowi 5 standardów: HTTP - protokół służący do przesyłania komunikatów XML - język wymiany informacji SOAP (Simple Object Access Protocol) - protokół zapewniający prostą, rozszerzalną i wszechstronną infrastrukturę do wymiany komunikatów XML WSDL ( Description Language) - język opisujący pełny kontrakt komunikacji z usługą UDDI (Universal Description, Discovery And Integration) - globalny katalog, rejestr usług umożliwiający ich publikowanie, wyszukiwanie oraz przeglądanie

Standardy Przedstawienie standardów SOAP WSDL UDDI SOAP (Simple Object Access Protocol) Definicja wg specyfikacji SOAP 1.2 SOAP to prosty protokół, który ma służyć do wymiany ustrukturyzowanych informacji w zdecentralizowanym, rozproszonym środowisku. SOAP wykorzystuje technologie XML do definiowania rozszerzalnej infrastruktury komunikacyjnej określającej strukturę komunikatów, które mogą być wymieniane za pośrednictwem różnych protokołów. Infrastruktura ta ma być niezależna od wszelkich modeli programowania oraz innych semantyk, specyficznych dla poszczególnych implementacji.

Cechy SOAP (1) Wprowadzenie Standardy Przedstawienie standardów SOAP WSDL UDDI Rozszerzalność SOAP umożliwia włączenie różnych funkcji związanych z systemami rozproszonymi (bezpieczeństwo, wiarygodność, ruting) jako warstwy rozszerzeń. Możliwość stosowania wielu protokołów sieciowych SOAP może być stosowany z dowolnym protokołem transportowym, takim jak TCP, HTTP, SMTP lub nawet MSMQ. Jednak - aby zachować interoperacyjność - konieczne jest zdefiniowanie standardowych wiązań protokołów, które określałyby reguły dla każdego środowiska.

Cechy SOAP (2) Wprowadzenie Standardy Przedstawienie standardów SOAP WSDL UDDI Niezależność od zastosowanego modelu programistycznego SOAP umożliwia stosowanie dowolnej liczby wzorców wymiany komunikatów (message exchange pattern - MEP), a wzorzec żądanie/odpowiedź (request/response) to tylko jedna z wielu możliwości. Inne przykłady wzorców to: zaproszenie/odpowiedź (solicit/response), powiadomienia (notification) oraz długa wymiana komunikatów pomiędzy systemami peer-to-peer.

Wiadomość SOAP Wprowadzenie Standardy Przedstawienie standardów SOAP WSDL UDDI SOAP jest protokołem bezstanowym i jednokierunkowym, ale istnieje możliwość budowy bardziej złożonych wiadomości. Stanowi tylko jedną z warstw. Nie zawiera informacji o semantyce przesyłanych danych oraz nie zajmuje się niezawodnością dostarczenia ich do odbiorcy.

Standardy Struktura wiadomości SOAP Przedstawienie standardów SOAP WSDL UDDI

Standardy Przedstawienie standardów SOAP WSDL UDDI WSDL ( Description Language) WSDL - język służący do opisu usług oparty na XML. Dokument WSDL określa technikę współdziałania z usługą i pełni rolę kontraktu pomiędzy nią, a klientem. Oto cechy takiego dokumentu: Opisuje używane w komunikacji z usługą typy danych (XML Schema) Definuje operacje i przypisuje odpowiednie do nich komunikaty, a nestępnie grupuje operacje w interfejsy. Określa protokół stosowany do komunikacji z usługą oraz wiązanie pomiędzy nim, a interfejsem. Przypisuje wiązanie do uniklanych adresów URI (punktów końcowych).

Standardy Struktura dokumentu WSDL Przedstawienie standardów SOAP WSDL UDDI

Elementy WSDL Wprowadzenie Standardy Przedstawienie standardów SOAP WSDL UDDI Nazwa types message porttype binding service Opis elementu Zawiera definicje typów abstrakcyjnych zdefiniowanych przy użyciu schematu XML. Definicja abstrakcyjnego komunikatu, który może składać się z wielu części, a każda część może być innego typu. Abstrakcyjny zbiór operacji obsługiwanych przez jeden lub kilka punktów końcowych. Specyfikacja konkretnego protokołu i formatu danych dla określonego porttype. Zbiór powiązanych punktów końcowych - punkt końcowy definiowany jest jako połączenie wiązania i adresu (URI)

Standardy Przedstawienie standardów SOAP WSDL UDDI UDDI (Universal Description, Discovery and Integration) UDDI - Rozproszony katalog (rejestr biznesowy) - umożliwiający firmom i aplikacjom w szybki i łatwy sposób znajdować i używać usług. Zawiera informacje dotyczące zarówno samych firm, jak i zarejestrowanych przez nie usług. Pełni rolę swoistej książki adrsowej, w której skład wchodzą: białe strony (ang. white pages) - informacje dotyczące dostawcy usługi (adres, dane kontaktowe) żółte strony (ang. yellow pages) - wykaz dostawców usług ułożony według klasyfikacji przemysłowej zielone strony (ang. green pages) - opisy usług wraz z odnośnikami do nich

Standardy Architektura UDDI (1) Przedstawienie standardów SOAP WSDL UDDI UDDI Business Registry (UBR) publiczny rejestr, który logicznie jest scentralizowany, natomiast fizycznie rozproszony i replikowany. Rysunek: Dodawanie i aktualizacja danych

Standardy Architektura UDDI (2) Przedstawienie standardów SOAP WSDL UDDI Założenia UBR UBR oferuje publiczne rejestry usług, umożliwiając przedsiębiorstwom reklamowanie swoich usług i pozwala wyszukiwać partnerów biznesowych. Przedsiębiorstwa mogą rejestrowac się u dowolnego operatora i te same informacje po pewnym czasie będą znajdywaly się u każdego operatora. Prywtne rejestry UDDI UDDI nie oznacza wyłącznie publicznego rejestru UBR. Możliwe są również węzły prywatne, nie bedące częścia UBR, jak i prywatne sieci węzłów, które synchronizują się między sobą, ale nie oddziaływują w żaden sposób z UBR.

Standardy Budowa rejestru UDDI Przedstawienie standardów SOAP WSDL UDDI

Google Wprowadzenie Standardy Google Amazon Google Web APIs - usługa udostępniona przez Google dająca możliwość wykonywania zapytań do wyszukiwarki bezpośrednio ze swojej aplikacji. Usługa ta udostępnia trzy możliwe żądania : Search Requests - przesłanie szukanego zapytania wraz z parametrami - w odpowiedzi uzyskujemy zbiór znalezionych wyników Cache Requests - przesłanie URL - w odpowiedzi uzyskujemy zawartość adresu URL ostatni raz odwiedzaną przez robota Google Spelling Requests - przesłanie zapytania - w odpowiedzi uzyskujemy sugestię poprawy pisowni

Standardy Amazon E-Commerce Service Google Amazon Amazon E-Commerce Service - usługa udostępniona przez jeden z największych sklepów internetowych Amazon.com. Usługa ta ma większe podłoże biznesowe w porównaniu do poprzedniego przykładu. A oto część z możliwych operacji, które ona udostępnia: Wyszukiwanie produktów według różnych złożonych kryteriów i pobieranie ich danych. Stworzenie i zarządzanie koszykiem z zakupami. Sprawdzanie danych klientów oraz sprzedawców. Pobieranie listy produktów danego sprzedawcy.

Standardy Usługi w.net (1).NET J2EE Dodatkowe narzędzia VS.NET w bardzo dużym stopniu wspieraja usługi. Do ich obsługi.net Framework udostępnia przestrzeń nazw System.Web.Services, w której znajdują się następujące klasy: WebService - klasa podstawowa dla XML, która dostarcza bezpośredni dostęp do wspólnych obiektów ASP.NET, takich jak stan aplikacji i sesji WebServiceAttribute - klasa umożliwiająca dodanie dodatkowych informacji do usługi, np. opisu jej funkcjonalności WebMethodAttribute - atrybut, który określa, które matody wchodzące w skład klasy dziedziczącej po WebService będą możliwe do wywoływania przez klienta usługi

Standardy Usługi w.net (2).NET J2EE Dodatkowe narzędzia wsdl.exe.net Framework udostępnia narzędzie wsdl.exe służące do generowania klas na podstawie definicji WSDL. Narzędzie to może wygenerować klasę umożliwiającą dostęp do usługi oraz klasę implementującą usługę. Tworzenie usługi Aby stworzyć prostą usługę, wystarczy w VS.NET stworzyć nowy projekt ASP.NET Web Service i odkomentować metodę HelloWorld.

J2EE Wprowadzenie Standardy.NET J2EE Dodatkowe narzędzia i J2EE J2EE w tej chwili jest dominującą technologią w sferze usług Web Services. W przeciwieństwie do poprzedniej technologii, tutaj mamy do wyboru wiele środowisk umożliwiających tworzenie usług oraz późniejsze ich udostępnienie. Jednakże z powodu licznych rozszerzeń oferowanych przez różnych producentów, nie możemy mówić o pełnej przenośności oprogramowania J2EE.

Środowiska J2EE Wprowadzenie Standardy.NET J2EE Dodatkowe narzędzia BEA WebLogic Platform 8.1 IBM WebSphere WASP (Web Applications and Services Platform) Apache Axis + Apache Jakarta Tomcat JWSDP (Java Developer Pack)

Standardy Dodatkowe narzędzia (1).NET J2EE Dodatkowe narzędzia XMLSpy 2005 Pełne wsparcie dla protokołu SOAP: Iterpreter dokumentów WSDL Tworzenie żądania SOAP, przesyłanie go do usługi Web Service i odbiór odpowiedzi SOAP Potęzny SOAP Debugger Obsługa plików WSDL - edytor wraz z wizualizacją oraz walidator

Standardy Dodatkowe narzędzia (2).NET J2EE Dodatkowe narzędzia WST (Web Standard Tools) WST jest rozszerzeniem platformy Eclipse wspierającym tworzenie wielowarstwowych aplikacji Web. Poniżej znajduje się część dostarczanych narzędzi przez to rozszerzenie: Tworzenie i publikowanie schematów WSDL w rejestrze UDDI. Zgłębianie rejestru UDDI i testowanie usług poprzez WSDL. Testowanie usług ze względu na zgodność z WS-I.

Wprowadzenie Standardy umożliwiają zestandaryzowaną komunikację pomiędzy programami napisanymi w różnych językach i dla różnych platform. Obecnie jest to najważniejsza technologia wspierająca integrację systemów informatycznych. Główne protokoły, na których bazują usługi : XML - język będący standardem internetowym, na którym oparte są usługi, zwane również XML SOAP - protokół komunikacyjny dla usług WSDL - język opisujący usługę UDDI - rejestr usług

Materiały (1) Wprowadzenie Standardy Witryna w całości poświęcona technologii usług http://www.webservices.org/ Witryna poświęcona usługom w technologii.net http://www.theserverside.net/ Witryna poświęcona usługom w technologii J2EE http://www.theserverside.com/ Specyfikacja protokołu SOAP http://www.w3.org/tr/soap/ Specyfikacja języka WSDL http://www.w3.org/tr/wsdl Specyfikacja i omówienie UDDI http://www.uddi.org/

Materiały (2) Wprowadzenie Standardy WSDL - omówienie (Aaron Skonnard) http://www.microsoft.com/poland/developer/techniczne/wsdl.mspx SOAP - omówienie (Aaron Skonnard) http://www.microsoft.com/poland/developer/techniczne/soap.mspx Usługi XML podstawy http://www.microsoft.com/poland/developer/techniczne/xml 2.mspx Web services sposób na integrację (Józef Muszyński) http://www.networld.pl/artykuly/25710.html Google Web APIs http://www.google.com/apis/index.html Amazon http://www.amazon.com/gp/aws/landing.html

Materiały (3) Wprowadzenie Standardy XMLSpy 2005 - Tools http://www.altova.com/features webservices.html Rozszerzenia dla platformy Eclipse WST http://www.eclipse.org/webtools/ Strona producenta BEA WebLogic Platform http://www.bea.com/ Strona producenta WASP a http://www.systinet.com/ Strona z JWSDP java.sun.com/webservices/jwsdp/index.jsp