Web Services Praktyczny przewodnik. Robert Nowak Vercom Sp z o. o.

Wielkość: px
Rozpocząć pokaz od strony:

Download "Web Services Praktyczny przewodnik. Robert Nowak Vercom Sp z o. o."

Transkrypt

1 Web Services Praktyczny przewodnik Robert Nowak Vercom Sp z o. o. 21 września 2005

2 Spis treści 1 Web Services - tworzenie i użytkowanie Definicja Web Services Przykłady użycia Web Services Rozbudowa dotychczasowych aplikacji Pozyskanie informacji z Google Współpraca z bazą danych Księgarnia amazon.com BPEL - język zarządzania Web Services Podstawowe właściwości języka Podsumowanie ebxml - XML dla biznesu Protokół SOAP Opis protokołu Szkielet komunikatu SOAP Koperta (envelope) Nagłówek (header) Ciało (body) Błąd (fault) Przykładowa para komunikatów Format WSDL Przykładowy listing WSDL UDDI Web Services z wykorzystaniem Apache Axis Co to jest Axis Instalacja Wymagane oprogramowanie Pobranie Axisa Instalacja pakietu Opcjonalna instalacja parsera XML Użycie Axis 1.2 razem z WebLogic Ustawienie zmiennych systemowych Sprawdzenie instalacji Struktura katalogów Korzystanie z Axis Lista uruchomionych serwisów Dodawanie własnych serwisów Udostępnianie Web Services za pomocą plików JWS Rozbudowana metoda udostępniania Web Services Pisanie aplikacji serwera z wykorzystaniem Axis Użycie plików.jws Tworzenie kodu źródłowego

3 SPIS TREŚCI Udostępnianie klasy Łączenie się z Web Service za pomocą URL Testowanie udostępnionych metod Metoda zaawansowana Tworzenie kodu źródłowego Udostępnianie serwisu Pisanie aplikacji klienta z wykorzystaniem Axis Klient statyczny Generacja plików Java z WSDL Tworzenie kodu klienta Kompilacja kodu Uruchomienie klienta Kod klienta Klient dynamiczny Tworzenie kodu źródłowego Kod klienta Pliki do pobrania Tworzenie i korzystanie z Web Services w PHP Wstęp Wbudowany SOAP Instalacja Konfiguracja Tworzenie serwera Tworzenie klienta PEAR SOAP Instalacja Tworzenie serwera Klient Pliki do pobrania Web Services z użyciem Eclipse Web Tools Platform Wstęp Użyte komponenty Instalacja Web Tools Platform Programowanie Web Services z użyciem WTP Tworzenie nowego projektu Tworzenie Web Service z klas Javy (bottom-up WS) Tworzenie Web Service z pliku WSDL (top-down WS) Tworzenie klienta Web Service przy pomocy WTP Klasa wykorzystująca wygenerowany kod klienta (klient statyczny) Web Service na zdalnym serwerze (eksport projektu do pliku WAR) Testowanie WS używając Web Services Explorer Testowanie Web Service za pomocą URL Pliki do pobrania Web Services i Googletworzenie klienta Wstęp Użycie dostarczonych bibliotek Klient Java Klient w PHP Pliki do pobrania

4 SPIS TREŚCI 3 6 Dodatki Słowniczek XML J2EE

5 Rozdział 1 Web Services - tworzenie i użytkowanie 1.1 Definicja Web Services Web Services to zbiór standardów stworzony w celu wspierania wymiany informacji za pomocą sieci. Standardy te tworzą abstrakcyjną warstwę, znajdującą się ponad systemami operacyjnymi czy też językami programowania, umożliwiając porozumiewanie się aplikacji bez kłopotania się o szczegóły implementacyjne. Format i sposób wymiany komunikatów między serwisami jest dokładnie określony za pomocą standardów W3C (http://w3c.org). Każdy serwer posiada dodatkowo reguły określające sposób komunikacji z nim (stosowane zabezpieczenia, adres właściwego serwisu) oraz listę udostępnianych metod wraz z argumentami i zwracanymi typami. Wszystko to jest opisane za pomocą dokumentu WSDL (1.4). Inne komputery współpracują z Web Service na zasadach określonych w tym dokumencie, używając komunikatów, które mogą być zawarte w kapsułce SOAP (1.3), lub też stosować format REST. Komunikaty są zazwyczaj przekazywane z wykorzystaniem protokołu HTTP. Ich budowa opiera się o XML (6.1.1), z możliwymi połączeniami z innymi standardowymi dokumentami sieciowymi. Aplikacje stworzone w różnych językach programowania, działające na różnych platformach sprzętowych i programistycznych mogą dzięki Web Services komunikować się ze sobą poprzez sieć tak łatwo jakby działo się to pomiędzy lokalnymi procesami (rysunek 1.1). Ta przenośność jest możliwa dzięki użyciu otwartych standardów, które tworzą OASIS razem z W3C. Stanowi ona o wielkiej sile Web Services, które powoli zdają się przejmować prym w komunikacji między aplikacjami sieciowymi. 1.2 Przykłady użycia Web Services Web Services służą znacznemu usprawnieniu współpracy na linii klient-serwer. W prosty sposób udostępniają usługi, jak również potrafią się z nimi łączyć i z nich korzystać. Można by powiedzieć że to żadna nowość i byłaby to prawda. Mamy strony WWW które przekazują informację, kanały RSS itp. Web Services nie są czymś rewolucyjnym jeśli chodzi o cel istnienia, jednak sposób ich pracy stanowi wielki krok w stronę ułatwienia i ustandaryzowania współpracy serwisów. Ich zastosowania są bardzo szerokie - można z nich z powodzeniem korzystać wszędzie tam gdzie potrzebna jest komunikacja w celu pobrania danych Rozbudowa dotychczasowych aplikacji Wyobraźmy sobie przykładową firmę, gdzie ze względu na niezawodność, serwer z najnowszymi danymi firmowy ma zostać uruchomiony na bazie danych PostgreSQL. Jednak wszystkie wcześniejsze dane są w aplikacji napisanej w.net i umieszczone w bazie danych MSSQL. Stworzenie komunikacji między aplikacją.net a Javową jest trudną sprawą, a jej wypracowanie zajęłoby miesiące. Bez użycia Web Services byłaby to trudna sytuacja, jednak dzięki nim, możliwe jest eleganckie i nowoczesne rozwiązanie: serwer MSSQL pozostaje na swoim miejscu, a na platformie.net uruchomionej 4

6 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 5 Rysunek 1.1: Idea Web Services na tym samym komputerze, zostaje udostępniony Web Service, wstawiający funkcje dostępu do MSSQL. Powstaje też aplikacja napisana w języku Java. Łączy się ona z bazą PostgreSQL, a także z Web Service.NET u. Z tej aplikacji korzysta klient. Oto schemat tej struktury:

7 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 6 Rysunek 1.2: Integracja.NET z Java Prześledźmy typowe wykorzystanie: użytkownik korzysta z aplikacji napisanej w Javie: wybiera z menu potrzebne mu informacje (1). Aplikacja analizuje dane i widzi, że potrzebuje danych z obu baz danych. Łączy się więc z Web Service udostępnionym przez.net i przekazuje mu żądanie (2). Web Service uruchamia odpowiednie procedury.net, który pobiera z bazy MSSQL odpowiednie wiadomości (3, 4). Dane zostają odesłane do Javy (5). Następnie pobierane są informacje z PostgreSQL (6,7), następuje ich przetworzenie i klient dostaje wynik (8). Jak widać, integracja przebiegła całkiem sprawnie. Ktoś mógłby stwierdzić, że to samo można by uzyskać innymi sposobami. To prawda, ale jak już napisano wcześniej, pochłonęłoby to dużo pracy i czasu. A my, dzięki zastosowaniu Web Services, możemy bez trudu przenieść naszą architekturę na następny poziom:

8 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 7 Rysunek 1.3: Integracja.NET z Java - Internet Uzyskaliśmy teraz podział na dwie maszyny: jedna z zestawem.net - MSSQL, druga J2EE - PostgreSQL. Powyższy rozdział na dwa komputery połączone tylko przez Internet staje się możliwy dzięki sile Web Services. Powstaje pytanie: po co ryzykować i kazać użytkownikowi pracować na serwerze? Po raz kolejny korzystamy z Web Services: Rysunek 1.4: Rozbudowa współpracy.net z Java przez Internet Kolejna korzyść wydaje się być naturalna: użytkowników może być teraz wielu, każdy z nich może pracować niezależnie i równocześnie.

9 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 8 Myślę że ten akapit dobrze zaprezentował potencjał drzemiący w Web Services Pozyskanie informacji z Google Do tej pory, chcąc na przykład wykorzystać wyniki wyszukiwania zwracane przez Google, należało parsować kod HTML. Odpowiedzią na zapytanie bała cała strona HTML. Pojedyncza pozycja (którą trzeba również wyłowić z innych) wygląda następująco: <!--m--><a href="http://www.emuzyka.pl/cd/"><b>płyty</b> <b>cd</b> ::<b>płyty</b><b>cd</b> na Emuzyka.pl.</a><table border="0" cellpa dding="0" cellspacing="0"><tbody><tr><td style="width: 37em;" clas s="j"><font size="-1">strona główna? <b>płyty</b> <b>cd</b>? 1,2, 3... Partnerem działu <b>płyty</b> <b>cd</b> na emuzyka.pl jest Startuj z emuzyka.pl? Stare dzwonki zabronione! <b>...</b><br><font color="#008000">www.emuzyka.pl/<b>cd</b>/ - 44k - 13 IX </font><nobr><a class="fl"href="http:// /search?q=cache:HsLTXekgOLMJ:www.emuzyka.pl/cd/+p%C5%82yty+cd +&hl=pl">kopia</a>-<aclass="fl"href="/search?hl=pl&lr=&amp ;q=related:www.emuzyka.pl/cd/">podobne strony </a><span> - </ span><aclass="fl"cg_filter="http://www.emuzyka.pl/cd/"href="javasc ript:void(0);">filter</a></nobr> </font><!--n--> Zamieńmy to może w bardziej czytelną postać: <!--m--> <a href="http://www.emuzyka.pl/cd/"> <b>płyty</b> <b>cd</b>::<b>płyty</b><b>cd</b>na Emuzyka.pl. </a> <table border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td style="width: 37em;" class="j"> <font size="-1"> Strona główna? <b>płyty</b> <b>cd</b>? 1, 2, 3... Partnerem działu <b>płyty</b> <b>cd</b> na emuzyka.pl jest Startuj z emuzyka.pl? Stare dzwonki zabronione! <b>...</b><br> <font color="#008000"> - 44k - 13 IX </font> <nobr> <a class="fl" href="http:// /search? q=cache:hsltxekgolmj:www.emuzyka.pl/cd/ +p%c5%82yty+cd+&hl=pl">kopia </a> - <a class="fl" href="/search? hl=pl &lr=

10 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 9 &q=related:www.emuzyka.pl/cd/"> Podobne strony </a> <span> - </span> <a class="fl" cg_filter="http://www.emuzyka.pl/cd/" href="javascript:void(0);"> Filter </a> </nobr> </font> <!--n--> Teraz z tego kodu należało wyciągnąć potrzebne nam dane - np. URL (www.emuzyka.pl). Nawet gdy już stworzono odpowiedni program, należało się liczyć z tym, że każda zmiana w formacie wyszukiwania spowoduje konieczność uaktualnienia. Chcąc ułatwić współpracę, Google stworzył i udostępnił własny Web Service: Google APIs. Teraz cały kod odpowiedzialny za wykonanie zapytania i otrzymania URL wygląda następująco (język PHP): $soapclient = new SoapClient( ); $odpowiedz = $soapclient-> dogooglesearch(key, płyty CD, 0, 10, true, countrypl, false, lang_pl,, ); $obecnyadres = $odpowiedz->resultelements[$x]->url; W zmiennej $obecnyadres mamy już w tej chwili adres którego szukamy. Niezależnie od przyszłych zmian w strukturze odpowiedzi, metoda ta zadziała. Za pomocą Google APIs można wykonać naprawdę wiele rzeczy - na przykład program do sprawdzania pozycji naszej strony w rankingu. Szerzej o tym programie oraz o Google APIs w rozdziale Współpraca z baza danych Ciekawszy przykład użycia to współpraca między komponentami tej samej aplikacji. Przykładowo serwer Web Services znajduje się na maszynie z bazą danych a klientem jest aplikacja w Javie. Zwyczajowo serwer musiał mieć udostępniony interfejs dostępu do bazy, a klient odwoływać się bezpośrednio do niego, przesyłając zapytania. Nie jest to zbyt bezpieczne, wymaga też implementacji dużej części obsługi w kliencie. Używając Web Services, aplikacja łączy się z serwerem za pomocą prostego kodu (Java), nie martwiąc się o szczegóły: Result res = new Result(); res = service.getksiazki(tytul, mincena, makscena); System.out.println("Tytul ksiazki numer " + x + " to " + res.gettytul() + " a cena " + res[x].getcena(); Zauważmy, że klient nie musi (a jeśli serwer nie zechce to nie może) wiedzieć jakiego typu bazę danych wykorzystano, czy też w jakim języku programowania napisano aplikację - jedyną interesującą go rzeczą jest odpowiedź na jego pytanie. Jeśli dodać do tego możliwość zabezpieczenia usługi za pomocą zaawansowanych technik (szyfrowanie całości i części przesyłanych komunikatów), otrzymujemy to, czym Web Services miały być: nową metodą sprawnej i bezpiecznej komunikacji między aplikacjami.

11 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE Księgarnia amazon.com Jeden z największych sklepów internetowych amazon.com również postanowił udostępnić swoje usługi z apomocą Web Services. Zostało to entuzjastycznie przyjęte przez osoby związane z serwisem. Wydawcy książek otrzymali narzędzie do monitorowania sprzedaży swoich i konkurencyjnych wydawnictw. Do tej pory wiele firm zbierało statystyki ręcznie (co przy dużej ilości sprzedawanych pozycji wymagało dużego nakladu pracy) albo też parsując HTML (o parsowaniu HTML napisano w punkcie 1.2.2). Jednocześnie właściciele stron internetowych otrzymali możliwość sprzedawania towarów amazon.com bezpośrednio ze swojego serwisu. Mając do dyspozycji Amazon Web Services, mogą w prosty sposób stworzyć kompleksową ofertę obejmującą na przykład tylko dział sprzedaży pokrywający się z tematyką strony. Odwiedzający mogą przeglądać taką ofertę, a nawet wyszukiwać wewnątrz niej. Za każdy zakupiony przedmiot, Amazon płaci odpowiednią marżę właścicielowi serwisu przez który dokonano transakcji BPEL - język zarzadzania Web Services BPEL, Business Process Execution Language jest językiem programowania opartym na XML. Jego zadaniem jest umożliwienie sprawnego i skoordynowanego przeprowadzenia transakcji ze jednym lub więcej Web Services. Co najważniejsze - serwisy te mogą być asynchroniczne i równoległe Podstawowe właściwości języka BPEL prezentuje logikę odmienną od języków takich jak C++ czy Java. Języki te służą do tworzenia programów, w których czas wykonywania pojedynczych zadań jest krótki (są one uruchamianie, wykonują swoją, zazwyczaj lokalną, pracę, a następnie kończą działanie). BPEL jest językiem wysokopoziomowym ze zdolnością wykonywania tranzycji stanów. Oznacza to, że system składa się z pewniej liczby (być może nieskończonej) stanów w których może się znaleźć oraz reguł przejść między nimi. W praktyce oznacza to, że jest nim możliwa obsługa asynchronicznych komunikatów, czy też wprowadzenie reguły ACID. Asynchroniczne komunikaty w uproszczeniu są to wiadomości na które oczekujemy nieznaną, ale skończoną ilość czasu. Przykładowo aplikacja wysyłająca wniosek o pożyczkę do banku w końcu otrzyma w końcu odpowiedź (zakładając niezawodność banku i transmisji), ale może ją otrzymać dopiero po kilku dniach. Nasza aplikacja zmieni wtedy stan na odpowiedni do sytuacji, przechodząc na przykład do wcześniej ustalonego zakupu posiadłości za pożyczone pieniądze w razie udzielenia kredytu, lub do wynajęcia mieszkania w razie odmowy. Nazwa reguły ACID jest skrótem od angielskich słów Atomicity (atomowość), Consistency (spójność), Isolation (izolacja), Durability (trwałość). Są to ważne zasady wzięte z dziedziny baz danych gwarantujące zachowanie poprawności przetwarzanych danych. Cztery żądania reguły oznaczają: atomowość - dana czynność jest wykonana cała, albo w ogóle. Jeśli zażądamy skopiowania danych z dysku A na dysk B, albo zostaną skopiowane wszystkie dane, albo żadne. Nawet jeśli połowa plików będzie zapisana już na dysku A gdy wydarzy się awaria, kopiowanie zostanie cofnięte, a dane usunięte. spójność - jeśli system był zgodny z określonymi regułami przed operacją, po operacji będzie również zgodny izolacja - jeśli dwa lub więcej procesów wykonuje się równocześnie, każdy działa osobno. Przykład: jeśli oba korzystają z jednej zmiennej, każdy z nich widzi jej własną wersję, zmieny wykonane w procesie A nie zmienią zmiennej w procesie B. Istnieją jednak tak zwane poziomy izolacji, gdzie niektóre założenia są modyfikowane. trwałość - dane są poprawne przez cały czas. Nawet jeśli wskutek awari wykonana zostanie tylko część operacji, co może spowodować powstanie niepoprawnego stanu, system będzie potrafił określić dokładnie w którym miejscu nastąpiła awaria i podjąć odpowiednie kroki Obecnie dostępne są już narzędzia, które pozwalają na tworzenie schematów przepływu obsługi w języku BPEL za pomocą technologii przeciągnij i upuść.

12 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE Podsumowanie Podsumowując, dzieki językowi BPEL jesteśmy, jak w powyższym przykładzie banku, połączyć wiele osobnych serwisów (składanie wniosków, obsługa przelewów pieniędzy, agencja wynajmu nieruchomości, pośrednik zakupu posiadłości) w jedną logicznie powiązaną całość. Dodatkowo otrzymujemy takie mechanizmy jak definiowanie współbieżności, zarządzanie zdarzeniami i wyjątkami czy też mainpulacja strukturami. Plugin pozwalający dodanie obsługi języka BPEL do Eclipse znajduje się pod adresem ebxml - XML dla biznesu ebxml, electronic business XML jest rodziną standardów XML tworzonych przez OASIS i UN/CEFACT których celem jest dostarczenie otwartej i opartej o XML infrastruktury która umożliwi światową wymianę informacji biznesowej w niezależny od systemu operacyjngo, bezpieczny i sprecyzowany sposób. Standard został zbudowany na podstawie wieloletnich doświadczeń biznesu elektronicznego, tak by w możliwie najprostszy sposób pokryć wymagania rozwijającego się przemysłu. Jedną z ciekawszych propozycji języka jest tworzenie profilu firmy, a następnie automatyczne znajdywanie partnera biznesowego z odpowiadającym nam profilem. 1.3 Protokół SOAP Komunikacja między serwerem a klientem odbywa się za pomocą protokołu SOAP. Specyfikacja standardu SOAP znajduje się pod adresem Tutaj wyjaśnimy tylko pokrótce czym jest SOAP i przedstawimy przykładowy komunikat SOAP i odpowiedź na niego Opis protokołu SOAP jest to protokół służący do wymiany informacji w zdecentralizowanym, rozproszonym środowisku. Używa technologii XML aby zdefiniować rozszerzalną platformę pozwalającą na wymianę komunikatów za pomocą różnych standardowych protokółów (np. HTTP). Platforma z założenia jest niezależna od języka programowania i innych szczegółów implementacyjnych. Protokół SOAP składa się z trzech głównych części: koperty (envelope) która określa szkielet opisujący co znajduje się w komunikacie i jak go przetwarzać, zbioru reguł kodujących potrzebnych do rozszyfrowania typów danych (również złożonych) zdefiniowanych wewnątrz aplikacji, reguł dotyczących wywoływania zdalnych procedur i odczytu odpowiedzi. Bardziej ludzko można by powiedzieć, że SOAP jest językiem jakim porozumiewają się Web Services, zbudowanym na podstawie języka XML (6.1.1), co umożliwia jego uniezależnienie do użytych systemów operacyjnych czy też języków programowania. Jego budowa jest określona przez standardy, a ich zachowanie gwarantuje poprawną wymianę informacji. Omówmy teraz dokładnie budowę komunikatu SOAP Szkielet komunikatu SOAP Ogólny szkielet prezentuje się następująco: <?xml version="1.0"?> <soap:envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingstyle="http://www.w3.org/2001/12/soap-encoding"> <soap:header>

13 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE naglowek </soap:header> <soap:body>......glowna czesc komunikatu <soap:fault>......bledy, o ile wystapily </soap:fault> </soap:body> </soap:envelope> Opiszemy teraz jego kolejne fragmenty Koperta (envelope) Element wymagany. Koperta to główna część komunikatu SOAP, inne elementy jak nagłówek czy ciało są jej potomkami. Koperta definiuje dokument XML jako komunikat SOAP. Składnia: <?xml version="1.0"?> <soap:envelope... Tresc komunikatu... </soap:envelope> Atrybut xmlns:soap (opcjonalny) wskazuje przestrzeń nazw (schemat według jakiego decydujemy się budować komunikat, w przykładzie podano standardowy zestaw dla SOAP 1.2 zdefioniowany przez W3C, ale możliwe jest defioniowanie własnych dokumentów). Składnia: xmlns:soap="url" Atrybut encodingstyle (obowiązkowy) służy do definicji typów danych używanych w dokumencie. Ten atrybut może pojawić się w każdym elemencie komunikatu i zostanie zastosowany w tym elemencie i wszystkich jego podelemnetach. Komunikat SOAP nie ma domyślnej wartości tego atrybutu, dlatego należy go podać przynajmniej raz, w głównym elemencie. Składnia: soap:encodingstyle="url" Prawidłowo zdefiniowane atrybuty to przykładowo: <?xml version="1.0"?> <soap:envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingstyle="http://www.w3.org/2001/12/soap-encoding">... Tresc komunikatu... </soap:envelope>

14 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 13 Nazwa next none ultimatereceiver własna Wykonywanie Musi być wykonany przez wszystkie węzły Nikt nie może tego wykonać Końcowy węzeł nie może tego wykonać reguły określone w URL Tablica 1.2: Wykonanie poszczególnych ról Nagłówek (header) Element opcjonalny. Nagłówek zawiera wiadomości określające dodatkowe właściwości komunikatu. Mogą to być na przykład elementy dotyczące bezpieczeństwa czy też reguły przetwarzania ciała. Jeśli podano nagłówek, musi zostać wpisany jako pierwszy na liście potomków koperty. Przykład: <?xml version="1.0"?> <soap:envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingstyle="http://www.w3.org/2001/12/soap-encoding"> <soap:header>... Dane naglowka... </soap:header> </soap:envelope> Atrybut actor (opcjonalny) (w SOAP wersja 1.2 role) określa odbiorcę, a właściwie wykonawcę danego elementu. Komunikaty SOAP mogą podróżować przez sieć, przechodząc po drodze przez wiele węzłów (komputerów). Atrybut actor określa kto ma go (element nagłówka) wykonywać: Nazwa next none ultimatereceiver własna Pełna nazwa "http://www.w3.org/2003/05/soap-envelope/role/next" "http://www.w3.org/2003/05/soap-envelope/role/none" "http://www.w3.org/2003/05/soap-envelope/role/ultimatereceiver" Tablica 1.1: Nazwy ról w SOAP Składnia: soap:actor="uri" Przykład nagłówka z elementem actor: <?xml version="1.0"?> <soap:envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingstyle="http://www.w3.org/2001/12/soap-encoding"> <soap:header> <m:trans xmlns:m="http://www.w3schools.com/transaction/"

15 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 14 soap:actor="http://www.w3schools.com/appml/"> 234 </m:trans> </soap:header> </soap:envelope> Atrybut mustunderstand (opcjonalny) określa, czy element w którym go użyto jest obowiązkowy czy opcjonalny do przetworzenia. Jeśli atrybut jest ustawiony, a odbiorca nie zrozumie użytego elementu, zostanie przerwane przetwarzanie i zwrócony zostanie błąd. Przykładowy komunikat wraz z nagłówkiem wygląda następująco: <?xml version="1.0"?> <soap:envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingstyle="http://www.w3.org/2001/12/soap-encoding"> <soap:header> <m:trans xmlns:m="http://www.w3schools.com/transaction/" soap:mustunderstand="1">234</m:trans> </soap:header> </soap:envelope> zapis m:trans oznacza metodę Trans obiektu m. Składnia: soap:mustunderstand="0 1" Atrybut encodingstyle (opcjonalny): wyjaśniony w punkcie Ciało (body) Element obowiązkowy. Ciało komunikatu zawiera wszystkie informacje, które końcowy odbiorca powinien otrzymać. Jego przetwarzanie może być uwarunkowane za pomocą nagłówka. Przykład ciała komunikatu: <?xml version="1.0"?> <soap:envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingstyle="http://www.w3.org/2001/12/soap-encoding"> <soap:body> <m:pobierzecene xmlns:m="http://www.w3schools.com/ceny"> <m:nazwa>jablko</m:nazwa> </m:pobierzcene> </soap:body> </soap:envelope> Odpowiedź na ten komunikat powinna wyglądać następująco: <?xml version="1.0"?> <soap:envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingstyle="http://www.w3.org/2001/12/soap-encoding"> <soap:body>

16 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 15 Element <faultcode> <faultstring> <faultactor> <detail> Opis kod identyfikujący błąd opis błędu informacja o węźle który spowodował błąd szczegóły błędu Tablica 1.3: Elementy komunikatu fault <m:pobierzceneodpowiedz xmlns:m="http://www.w3schools.com/ceny"> <m:cena>1.90</m:cena> </m:pobierzceneodpowiedz> </soap:body> </soap:envelope> Bład (fault) Element opcjonalny. Ta część komunikatu zawiera opis ewentualnych błędów. Jest potomkiem elementu Body, nie Envelope. Komunikat błędu wygląda następująco: <soapenv:envelope> <soapenv:body> <soapenv:fault> <faultcode>ns1:client</faultcode> <faultstring>wykonano niepoprawna operacje</faultstring> <detail> <ns2:hostname>webservices</ns2:hostname> </detail> </soapenv:fault> </soapenv:body> </soapenv:envelope> Przykładowa para komunikatów Zobaczmy teraz przykładową parę komunikatów SOAP. Klient wysyła argument <host xsi:type="xsd:string"> gdzie host to nazwa argumentu, xsi:type to atrybut typu String o wartości inotel.pl do funkcji getip(). W zamian oczekuje czegoś bardziej skomplikowanego: struktury Adres, która składa się z nazwy zadanego hosta i jego adresu IP (obliczony na serwerze). Komunikat klienta wygląda następująco: <?xml version="1.0" encoding="utf-8"?> <SOAP-ENV:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://serwer" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <ns1:getip> <host xsi:type="xsd:string">

17 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 16 inotel.pl </host> </ns1:getip> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Częścią przenoszącą dane jest <SOAP-ENV:Body>. Metoda którą wywołujemy to getip (<ns1:getip>). Widać tam argument host typu String (<host xsi:type="xsd:string">) i wartości inotel.pl. Serwer odpowiada: <?xml version="1.0" encoding="utf-8"?> <SOAP-ENV:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://serwer" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <ns1:getipresponse> <getipreturn xsi:type="soap-enc:struct"> <nazwa xsi:type="xsd:string"> inotel.pl </nazwa> <adres xsi:type="xsd:string"> </adres> </getipreturn> </ns1:getipresponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Tutaj również informacja zawarta jest w części <SOAP-ENV:Body>. Dostajemy strukturę składającą się z nazwy i adresu IP, czyli to czego oczekiwaliśmy. Jak widać znając XML, można z łatwością odczytać (przynajmniej podstawowe) komunikaty SOAP. 1.4 Format WSDL WSDL (Web Services Description Language, jest dokumentem XML(6.1.1) opisującym udostępnione przez serwer Web Services. Udostępniając listę dostępnych metod, ich argumenty (w tym złożone typy danych) i zwracane typy, w prosty sposób definiuje schemat komunikacji na linii klient-serwer. Dzięki rozszerzalności WSDL pozwala opisywać procedury i ich formaty niezależnie od protokołów użytych do przekazywania danych. W chwili obecnej większość aplikacji oferuje automatyczne generowanie pliku WSDL, jednak przydatność jego odczytania jest bardzo pomocna Przykładowy listing WSDL Spróbujmy odczytać przykładowy plik WSDL. Cały listing niepoprzerywany komentarzami znajduje się w punkcie <?xml version="1.0" encoding="utf-8"?> Określenie wersji standardu XML (1.0) i kodowania znaków dokumentu (utf8).

18 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 17 <wsdl:definitions targetnamespace="http://localhost:8080/axis/test/helloworld.jws" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://localhost:8080/axis/test/helloworld.jws" xmlns:intf="http://localhost:8080/axis/test/helloworld.jws" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/xmlschema"> Powyższy fragment to zdefiniowanie podstawowych informacji na temat samego dokumentu, a także przestrzeni nazw w jakiej znajdują się zmienne i metody wymienione dalej. <!--WSDL created by Apache Axis version: Built on Jun 14, 2005 (09:15:57 EDT)--> Komentarz generatora. <wsdl:message name="getiprequest"> <wsdl:part name="host" type="xsd:string"/> </wsdl:message> <wsdl:message name="getipresponse"> <wsdl:part name="getipreturn" type="xsd:string"/> </wsdl:message> Są to opisy dwóch komunikatów: getiprequest i getipresponse. Pierwszy z komunikatów służy do wywołania metody getip, a drugi definiuje odpowiedź tej metody. Nazwy które się tu pojawiają, nie są obowiązkowe. Powiązanie komunikatu z metodą widać w dalszej części dokumentu. Każdy z tagów opisujących komunikat zawiera określenie związanych z nim danych. W przypadku getiprequest jest to String o nazwie host. Łącząc się z serwerem, klient wysyła dokument SOAP, w którym podana jest właśnie nazwa tego komunikatu, a także argument o tej nazwie. Klient dowiaduje się o jej istnieniu właśnie z pliku WSDL. W przypadku getipresponse odczytujemy, że po wykonaniu metody getip serwer odeśle nam komunikat z łańcuchem znaków. Możliwe jest również stosowanie złożonych typów danych. Korzysta się wtedy z dodatkowych definicji typów. <wsdl:message name="helloresponse"> <wsdl:part name="helloreturn" type="xsd:string"/> </wsdl:message> <wsdl:message name="hellorequest"> </wsdl:message> Tutaj widzimy prostą metodę nie przyjmującą parametrów. Zwróćmy uwagę, że kolejność definiowania komunikatów nie jest ważna w obrębie nadrzędnego tagu. <wsdl:message name="podzielresponse"> <wsdl:part name="podzielreturn" type="xsd:float"/> </wsdl:message> <wsdl:message name="podzielrequest"> <wsdl:part name="a" type="xsd:int"/> <wsdl:part name="b" type="xsd:int"/> </wsdl:message> Metoda podzielrequest przyjmuje dwa parametry typu int, zwraca jeden float. <wsdl:porttype name="helloworld">

19 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 18 Port type to nazwany zbiór abstrakcyjnych operacji i powiązanych z nimi abstrakcyjnych komunikatów. Nazwa portu jest unikalna w obrębie dokumentu. <wsdl:operation name="getip" parameterorder="host"> <wsdl:input message="impl:getiprequest" name="getiprequest"/> <wsdl:output message="impl:getipresponse" name="getipresponse"/> </wsdl:operation> Tutaj pojawia się wspomniane wyżej powiązanie komunikatów z metodami. Widać wyraźne zaznaczenie, jak nazywa się metoda którą wywołujemy, jej parametry oraz który komunikat jest wejściowy, a który wyjściowy. <wsdl:operation name="hello"> <wsdl:input message="impl:hellorequest" name="hellorequest"/> <wsdl:output message="impl:helloresponse" name="helloresponse"/> </wsdl:operation> <wsdl:operation name="podziel" parameterorder="a b"> <wsdl:input message="impl:podzielrequest" name="podzielrequest"/> <wsdl:output message="impl:podzielresponse" name="podzielresponse"/> </wsdl:operation> </wsdl:porttype> <wsdl:binding name="helloworldsoapbinding" type="impl:helloworld"> Ta część opisuje szczegółowo sposób łączenia metod zdefiniowanych wyżej z właściwym serwisem. <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> Określony zostaje styl wymiany komunikatów na RPC (remote procedure call, zdalne wywołanie procedury). Styl ten polega na tym, że komunikacja odbywa się na zasadzie wysłania pojedynczej procedury do wykonania i otrzymanie odpowiedzi. Innym, bardziej rozbudowanym, sposobem jest document oriented communication, gdzie zakłada się wykonanie całego przesłanego dokumentu XML, opisującego kolejne metody do wywołania. <wsdl:operation name="getip"> <wsdlsoap:operation soapaction=""/> <wsdl:input name="getiprequest"> <wsdlsoap:body encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://defaultnamespace" use="encoded"/> </wsdl:input> <wsdl:output name="getipresponse"> <wsdlsoap:body encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8080/axis/test/helloworld.jws" use="encoded"/> </wsdl:output> </wsdl:operation> Tutaj znajdują się wiadomości na temat rodzajów komunikatów i standardów według których mają być budowane. <wsdl:operation name="hello"> <wsdlsoap:operation soapaction=""/>

20 ROZDZIAŁ 1. WEB SERVICES - TWORZENIE I UŻYTKOWANIE 19 <wsdl:input name="hellorequest"> <wsdlsoap:body encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://defaultnamespace" use="encoded"/> </wsdl:input> <wsdl:output name="helloresponse"> <wsdlsoap:body encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8080/axis/test/helloworld.jws" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="podziel"> <wsdlsoap:operation soapaction=""/> <wsdl:input name="podzielrequest"> <wsdlsoap:body encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://defaultnamespace" use="encoded"/> </wsdl:input> <wsdl:output name="podzielresponse"> <wsdlsoap:body encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8080/axis/test/helloworld.jws" use="encoded"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="helloworldservice"> <wsdl:port binding="impl:helloworldsoapbinding" name="helloworld"> <wsdlsoap:address location="http://localhost:8080/axis/test/helloworld.jws"/> </wsdl:port> </wsdl:service> Korzystając z wyżej zdefiniowanych elementów, możemy stworzyć ostatni, najważniejszy fragment WSDL. Z tagu <wsdl:service> klient dowiaduje się wszystkiego o serwisie, czyli adres pod który ma kierować zapytania (adres serwera) i jak ma je budować. </wsdl:definitions> Jak widać, dokument WSDL jest po prostu zbiorem definicji metod i danych zapisanym w języku pochodnym od XMLa. 1.5 UDDI UDDI, Universal Description, Discovery, and Integration (uniwersalny opis, odkrywanie i scalanie) UDDI jest niezależnym od platformy, opartym o język XML (6.1.1) rejestrem umożliwiającym odnajdywanie i scalanie aplikacji biznesowych z całego świata poprzez internet. Każdy może dodać swoją usługę do katalogu, tak by inni mogli ją odnaleźć, lub też skorzystać z juz zamieszczenych roziwąznań.

Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej

Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej dr inż. Paweł Czarnul pczarnul@eti.pg.gda.pl Architektury usług internetowych laboratorium

Bardziej szczegółowo

Simple Object Access Protocol

Simple Object Access Protocol Simple Object Access Protocol Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 11 grudnia 2005 roku Czym jest SOAP? Akronim SOAP oznacza Simple Object Access Protocol. SOAP jest

Bardziej szczegółowo

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

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z

Bardziej szczegółowo

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

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe Architektury Usług Internetowych Laboratorium 2. Usługi sieciowe Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych na przykładzie prostego serwera Apache Axis2. Apache Axis2 Apache

Bardziej szczegółowo

Komunikacja i wymiana danych

Komunikacja i wymiana danych Budowa i oprogramowanie komputerowych systemów sterowania Wykład 10 Komunikacja i wymiana danych Metody wymiany danych Lokalne Pliki txt, csv, xls, xml Biblioteki LIB / DLL DDE, FastDDE OLE, COM, ActiveX

Bardziej szczegółowo

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

Dostęp do komponentów EJB przez usługi Web Services 243 Dostęp do komponentów EJB przez usługi Web Services Mikołaj Morzy Mikolaj.Morzy@cs.put.poznan.pl http://www.cs.put.poznan.pl/mmorzy/ Plan rozdziału 244 Wprowadzenie do usług sieciowych Architektura

Bardziej szczegółowo

Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI

Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI Maciej Zakrzewicz PLOUG mzakrz@cs.put.poznan.pl Plan prezentacji Wprowadzenie do architektury zorientowanej na usługi Charakterystyka technologii

Bardziej szczegółowo

Tworzenie i wykorzystanie usług sieciowych

Tworzenie i wykorzystanie usług sieciowych Ćwiczenie 14 Temat: Tworzenie i wykorzystanie usług sieciowych Cel ćwiczenia: W trakcie ćwiczenia student zapozna się z procedurą tworzenia usługi sieciowej w technologii ASP.NET oraz nauczy się tworzyć

Bardziej szczegółowo

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

Web Services. Wojciech Mazur. 17 marca 2009. Politechnika Wrocławska Wydział Informatyki i Zarządzania Standardy w Rodzaje Przykłady Politechnika Wrocławska Wydział Informatyki i Zarządzania 17 marca 2009 Standardy w Rodzaje Przykłady Plan prezentacji 1 Wstęp 2 Standardy w 3 4 Rodzaje 5 Przykłady 6 Standardy

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

I. Informacje ogólne. Jednym z takich systemów jest Mambo. MAMBO (CMS) I. Informacje ogólne CMS, Content Management System ("system zarządzania treścią") jest to jedna lub zestaw aplikacji internetowych pozwalających na łatwe utworzenie oraz późniejszą aktualizację

Bardziej szczegółowo

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa

Bardziej szczegółowo

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

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 I Wprowadzenie (wersja 0906) Kurs OPC S7 Spis treści Dzień 1 I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami automatyki I-6 Cechy podejścia dedykowanego

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5 Wdrożenie modułu płatności eservice dla systemu Zen Cart 1.3.9 1.5 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po

Bardziej szczegółowo

Jak używać funkcji prostego udostępniania plików do udostępniania plików w systemie Windows XP

Jak używać funkcji prostego udostępniania plików do udostępniania plików w systemie Windows XP Jak używać funkcji prostego udostępniania plików do udostępniania plików w systemie Windows XP System Windows XP umożliwia udostępnianie plików i dokumentów innym użytkownikom komputera oraz innym użytkownikom

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x Wdrożenie modułu płatności eservice dla systemu oscommerce 2.3.x - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo

Zaawansowane aplikacje WWW - laboratorium

Zaawansowane aplikacje WWW - laboratorium Zaawansowane aplikacje WWW - laboratorium Przetwarzanie XML (część 2) Celem ćwiczenia jest przygotowanie aplikacji, która umożliwi odczyt i przetwarzanie pliku z zawartością XML. Aplikacja, napisana w

Bardziej szczegółowo

AXIS2 - tworzenie usługi sieciowej i klienta Axis Data Binding. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak

AXIS2 - tworzenie usługi sieciowej i klienta Axis Data Binding. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak AXIS2 - tworzenie usługi sieciowej i klienta Axis Data Binding dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak Ustawienie zmiennych środowiskowych Przed rozpoczęciem pracy z pakietem AXIS należy ustalić

Bardziej szczegółowo

Java jako język programowania

Java jako język programowania Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Magento 1.4 1.9

Wdrożenie modułu płatności eservice. dla systemu Magento 1.4 1.9 Wdrożenie modułu płatności eservice dla systemu Magento 1.4 1.9 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie do

Bardziej szczegółowo

Programowanie obiektowe zastosowanie języka Java SE

Programowanie obiektowe zastosowanie języka Java SE Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z

Bardziej szczegółowo

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby

Bardziej szczegółowo

WPROWADZENIE DO JĘZYKA JAVA

WPROWADZENIE DO JĘZYKA JAVA WPROWADZENIE DO JĘZYKA JAVA programowanie obiektowe KRÓTKA HISTORIA JĘZYKA JAVA KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny języka java. Pierwsza nazwa Oak (dąb). KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny

Bardziej szczegółowo

1 Wprowadzenie do J2EE

1 Wprowadzenie do J2EE Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2

Bardziej szczegółowo

Rozproszone systemy Internetowe

Rozproszone systemy Internetowe Rozproszone systemy Internetowe Transport komunikatów WS: protokół SOAP RSI Oskar Świda 1 Simple Object Access Protocol Bezstanowy protokół komunikacyjny, oparty na standardzie XML Prosty i elastyczny,

Bardziej szczegółowo

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer; 14.3. Podstawy obsługi X Window 14.3. Podstawy obsługi X Window W przeciwieństwie do systemów Windows system Linux nie jest systemem graficznym. W systemach Windows z rodziny NT powłokę systemową stanowi

Bardziej szczegółowo

OpenLaszlo. OpenLaszlo

OpenLaszlo. OpenLaszlo OpenLaszlo Spis Treści 1 OpenLaszlo Co to jest? Historia Idea Architektura Jako Flash lub DHTML Jako servlet lub SOLO Jak to działa? Język LZX Struktura programu Skrypty Obiekty i klasy Atrybuty i metody

Bardziej szczegółowo

Ćwiczenie 1. Przygotowanie środowiska JAVA

Ćwiczenie 1. Przygotowanie środowiska JAVA Ćwiczenie 1 Przygotowanie środowiska JAVA 1. Wprowadzenie teoretyczne Instalacja JDK (Java Development Kit) NaleŜy pobrać z java.sun.com środowisko i zainstalować je. Następnie naleŝy skonfigurować środowisko.

Bardziej szczegółowo

Pakiety i interfejsy. Tomasz Borzyszkowski

Pakiety i interfejsy. Tomasz Borzyszkowski Pakiety i interfejsy Tomasz Borzyszkowski Pakiety podstawy W dotychczasowych przykładach nazwy klas musiały pochodzić z jednej przestrzeni nazw, tj. być niepowtarzalne tak, by nie doprowadzić do kolizji

Bardziej szczegółowo

Aplikacje internetowe - laboratorium

Aplikacje internetowe - laboratorium Aplikacje internetowe - laboratorium Administracja serwerem aplikacji. Celem ćwiczenia jest zainstalowanie i administracja prostym serwerem aplikacji. Ćwiczenie zostanie wykonane przy użyciu popularnego

Bardziej szczegółowo

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium

Bardziej szczegółowo

System Kancelaris. Zdalny dostęp do danych

System Kancelaris. Zdalny dostęp do danych Kancelaris krok po kroku System Kancelaris Zdalny dostęp do danych Data modyfikacji: 2008-07-10 Z czego składaj adają się systemy informatyczne? System Kancelaris składa się z dwóch części: danych oprogramowania,

Bardziej szczegółowo

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji

Bardziej szczegółowo

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja Produkcja by CTI Proces instalacji, ważne informacje oraz konfiguracja Spis treści 1. Ważne informacje przed instalacją...3 2. Instalacja programu...4 3. Nawiązanie połączenia z serwerem SQL oraz z programem

Bardziej szczegółowo

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

Wstęp. Skąd pobrać program do obsługi FTP? Logowanie

Wstęp. Skąd pobrać program do obsługi FTP? Logowanie Wstęp FTP - (ang. File Transfer Protocol - protokół transmisji danych) jest to protokół typu klient-serwer, który umożliwia przesyłanie plików na serwer, oraz z serwera poprzez program klienta FTP. Dzięki

Bardziej szczegółowo

Załącznik 1 instrukcje instalacji

Załącznik 1 instrukcje instalacji Załącznik 1 instrukcje instalacji W poniższym załączniku przedstawione zostaną instrukcje instalacji programów wykorzystanych w trakcie tworzenia aplikacji. Poniższa lista przedstawia spis zamieszczonych

Bardziej szczegółowo

SOAP. Autor: Piotr Sobczak

SOAP. Autor: Piotr Sobczak SOAP Autor: Piotr Sobczak AGENDA: Trochę o Web Services Wprowadzenie do SOAP Anatomia komunikatu SOAP Wysyłanie i otrzymywanie komunikatu SOAP oraz API Javy w przykładach SOAP z załącznikami SOAP-RPC Obsługa

Bardziej szczegółowo

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja Instytut Telekomunikacji Wydział Elektroniki i Technik Informacyjnych Politechnika Warszawska, marzec 2015 Wprowadzenie Ćwiczenie jest wykonywane

Bardziej szczegółowo

Instrukcja konfiguracji funkcji skanowania

Instrukcja konfiguracji funkcji skanowania Instrukcja konfiguracji funkcji skanowania WorkCentre M123/M128 WorkCentre Pro 123/128 701P42171_PL 2004. Wszystkie prawa zastrzeżone. Rozpowszechnianie bez zezwolenia przedstawionych materiałów i informacji

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium Zaawansowane aplikacje internetowe - laboratorium Web Services (część 3). Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005. Ponadto wymagany jest

Bardziej szczegółowo

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja ZPKSoft WDoradca 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja 1. Wstęp ZPKSoft WDoradca jest technologią dostępu przeglądarkowego do zasobów systemu ZPKSoft Doradca.

Bardziej szczegółowo

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

MINISTERSTWO FINANSÓW PLAN INTEGRACJI SYSTEMU ZAŁĄCZNIK NR 6 SEAP SPECYFIKACJA KANAŁ EMAIL DLA PODMIOTÓW ZEWNĘTRZNYCH PL PROJEKT ECIP/SEAP MINISTERSTWO FINANSÓW PLAN INTEGRACJI SYSTEMU ZAŁĄCZNIK NR 6 SEAP SPECYFIKACJA KANAŁ EMAIL DLA PODMIOTÓW ZEWNĘTRZNYCH PL PROJEKT ECIP/SEAP WERSJA 1 z 15 Spis treści 1. Kanał email dla podmiotów zewnętrznych...

Bardziej szczegółowo

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania

Bardziej szczegółowo

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

Web Services. Technologie Biznesu Elektronicznego. Konrad Kunicki. Politechnika Wrocławska, Wydział Informatyki i Zarządzania 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

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany

Bardziej szczegółowo

Płatności CashBill - SOAP

Płatności CashBill - SOAP Dokumentacja techniczna 1.0 Płatności CashBill - SOAP Dokumentacja wdrożenia systemu Płatności CashBill w oparciu o komunikację według protokołu SOAP CashBill Spółka Akcyjna ul. Rejtana 20, 41-300 Dąbrowa

Bardziej szczegółowo

Niezbędne serwery aplikacji. Wprowadzenie do technologii JBoss i Apache Tomcat.

Niezbędne serwery aplikacji. Wprowadzenie do technologii JBoss i Apache Tomcat. Niezbędne serwery aplikacji. Wprowadzenie do technologii JBoss i Apache Tomcat. Serwer Tomcat Plan wykładu Opis serwera Jak uruchomić napisaną aplikację Podstawowa konfiguracja Pierwsze uruchomienie Tomcat

Bardziej szczegółowo

Pracownia internetowa w każdej szkole (edycja jesień 2005)

Pracownia internetowa w każdej szkole (edycja jesień 2005) Instrukcja numer SPD3/12_02/Z Pracownia internetowa w każdej szkole (edycja jesień 2005) Opiekun pracowni internetowej cz. 3 Instalacja programu phpmyadmin (PD3) Zadanie 1 Program phpmyadmin jest jednym

Bardziej szczegółowo

System zdalnego dostępu (VPN) do sieci Wydziału Elektrycznego PW

System zdalnego dostępu (VPN) do sieci Wydziału Elektrycznego PW System zdalnego dostępu (VPN) do sieci Wydziału Elektrycznego PW Dokument dostęny do pobrania Z początkiem bieżącego roku akademickiego 2011/2012 zotał uruchomiony nowy system zdalnego dostępu do sieci

Bardziej szczegółowo

Java Podstawy. Michał Bereta www.michalbereta.pl mbereta@pk.edu.pl

Java Podstawy. Michał Bereta www.michalbereta.pl mbereta@pk.edu.pl Prezentacja współfinansowana przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach projektu Wzmocnienie znaczenia Politechniki Krakowskiej w kształceniu przedmiotów ścisłych i propagowaniu

Bardziej szczegółowo

SOA Web Services in Java

SOA Web Services in Java Wydział Informatyki i Zarządzania Wrocław,16 marca 2009 Plan prezentacji SOA 1 SOA 2 Usługi Przykłady Jak zacząć SOA Wycinek rzeczywistości Problemy zintegrowanych serwisów : Wycinek Rzeczywistości Zacznijmy

Bardziej szczegółowo

Gatesms.eu Mobilne Rozwiązania dla biznesu

Gatesms.eu Mobilne Rozwiązania dla biznesu Mobilne Rozwiązania dla biznesu SPECYFIKACJA TECHNICZNA WEB API-USSD GATESMS.EU wersja 0.9 Opracował: Gatesms.eu Spis Historia wersji dokumentu...3 Bezpieczeństwo...3 Wymagania ogólne...3 Mechanizm zabezpieczenia

Bardziej szczegółowo

Certyfikat Certum Basic ID. Instrukcja dla użytkowników Windows Vista. wersja 1.3 UNIZETO TECHNOLOGIES SA

Certyfikat Certum Basic ID. Instrukcja dla użytkowników Windows Vista. wersja 1.3 UNIZETO TECHNOLOGIES SA Certyfikat Certum Basic ID Instrukcja dla użytkowników Windows Vista wersja 1.3 Spis treści 1. INSTALACJA CERTYFIKATU... 3 1.1. KLUCZ ZAPISANY BEZPOŚREDNIO DO PRZEGLĄDARKI (NA TYM KOMPUTERZE),... 3 1.2.

Bardziej szczegółowo

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016 Wstęp - wykład 0 22 lutego 2016 Historia Simula 67 język zaprojektowany do zastosowan symulacyjnych; Smalltalk 80 pierwszy język w pełni obiektowy; Dodawanie obiektowości do języków imperatywnych: Pascal

Bardziej szczegółowo

Instrukcja dla użytkowników Windows Vista Certyfikat Certum Basic ID

Instrukcja dla użytkowników Windows Vista Certyfikat Certum Basic ID Instrukcja dla użytkowników Windows Vista Certyfikat Certum Basic ID wersja 1.3 Spis treści 1. INSTALACJA CERTYFIKATU... 3 1.1. KLUCZ ZAPISANY BEZPOŚREDNIO DO PRZEGLĄDARKI (NA TYM KOMPUTERZE),... 3 1.2.

Bardziej szczegółowo

Dokumentacja Administratora portalu. aplikacji. Wirtualna szkoła

Dokumentacja Administratora portalu. aplikacji. Wirtualna szkoła Dokumentacja Administratora portalu aplikacji Wirtualna szkoła aktualna na dzień 20.12.2012 Wykonawca: Young Digital Planet SA 2012 Strona 2 z 15 Spis Treści Wirtualna szkoła SYSTEM ZARZĄDZANIA NAUCZANIEM...

Bardziej szczegółowo

Portal SRG BFG. Instrukcja korzystania z Portalu SRG BFG

Portal SRG BFG. Instrukcja korzystania z Portalu SRG BFG Portal SRG BFG Instrukcja korzystania z Portalu SRG BFG Opracowano w Departamencie Informatyki i Administracji Bankowego Funduszu Gwarancyjnego Październik 2013 Spis treści: 1. Dostęp do strony portalu...

Bardziej szczegółowo

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

CENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI CENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI Instrukcja użytkownika Narzędzie do modelowania procesów BPEL Warszawa, lipiec 2009 r. UNIA EUROPEJSKA EUROPEJSKI FUNDUSZ

Bardziej szczegółowo

Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami

Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami Dotyczy programów opartych na bazie BDE: Menedżer Pojazdów PL+ Ewidencja Wyposażenia PL+ Spis treści: 1. Wstęp...

Bardziej szczegółowo

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44 Zaawansowane aplikacje internetowe EJB 1 Rozróżniamy dwa rodzaje beanów sesyjnych: Stateless Statefull Celem tego laboratorium jest zbadanie różnic funkcjonalnych tych dwóch rodzajów beanów. Poszczególne

Bardziej szczegółowo

Nr: 12. Tytuł: UDOSTĘPNIANIE DANYCH O SPRAWACH KLIENTOM KANCELARII NA ZEWNĘTRZNYCH SERWERACH WWW. Data modyfikacji: 2012-03-08

Nr: 12. Tytuł: UDOSTĘPNIANIE DANYCH O SPRAWACH KLIENTOM KANCELARII NA ZEWNĘTRZNYCH SERWERACH WWW. Data modyfikacji: 2012-03-08 Nr: 12 Tytuł: UDOSTĘPNIANIE DANYCH O SPRAWACH KLIENTOM KANCELARII NA ZEWNĘTRZNYCH SERWERACH WWW Data modyfikacji: 2012-03-08 Co zawiera ten dokument: Ten dokument zawiera informacje o możliwościach i sposobie

Bardziej szczegółowo

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Deduplikacja danych. Zarządzanie jakością danych podstawowych Deduplikacja danych Zarządzanie jakością danych podstawowych normalizacja i standaryzacja adresów standaryzacja i walidacja identyfikatorów podstawowa standaryzacja nazw firm deduplikacja danych Deduplication

Bardziej szczegółowo

Współpraca z platformą Emp@tia. dokumentacja techniczna

Współpraca z platformą Emp@tia. dokumentacja techniczna Współpraca z platformą Emp@tia dokumentacja techniczna INFO-R Spółka Jawna - 2013 43-430 Pogórze, ul. Baziowa 29, tel. (33) 479 93 29, (33) 479 93 89 fax (33) 853 04 06 e-mail: admin@ops.strefa.pl Strona1

Bardziej szczegółowo

Tomasz Boiński: 1. Pozycjonowanie stron i zastosowanie mod_rewrite

Tomasz Boiński: 1. Pozycjonowanie stron i zastosowanie mod_rewrite Tomasz Boiński: 1 Pozycjonowanie stron i zastosowanie mod_rewrite Pozycjonowanie stron Promocja strony odbywa się poprzez umiejscowienie jej jak najwyżej w wynikach wyszukiwania Wyszukiwarki indeksują

Bardziej szczegółowo

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

Web Services. Bartłomiej Świercz. Łódź, 2 grudnia 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Web Services Web Services Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 2 grudnia 2005 roku Wstęp Oprogramowanie napisane w różnych językach i uruchomione na różnych platformach może wykorzystać

Bardziej szczegółowo

Programowanie niskopoziomowe

Programowanie niskopoziomowe W. Complak, J.Kniat, M. Antczak, K. Kwarciak, G. Palik, A. Rybarczyk, Ł. Wielebski Materiały Programowanie niskopoziomowe http://www.cs.put.poznan.pl/arybarczyk/c_w_0.pdf Spis treści 1. Instalacja środowiska

Bardziej szczegółowo

Ewidencja Wyposażenia PL+

Ewidencja Wyposażenia PL+ Ewidencja Wyposażenia PL+ Jak poprawnie skonfigurować uprawnienia systemowe Spis treści: 1. Wstęp 2. Systemy: Windows Vista,, 8, 8.1, 10... 2.1. Folder z bazą danych... 2.2. Folder z konfiguracją programu...

Bardziej szczegółowo

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

Zaawansowane aplikacje internetowe. Wykład 6. Wprowadzenie do Web Services. wykład prowadzi: Maciej Zakrzewicz. Web Services Wykład 6 Wprowadzenie do Web Services wykład prowadzi: Maciej Zakrzewicz Web Services 1 Plan wykładu Wprowadzenie do technologii Web Services Architektura Web Services Protokół komunikacyjny SOAP Język

Bardziej szczegółowo

Serwer druku w Windows Server

Serwer druku w Windows Server Serwer druku w Windows Server Ostatnimi czasy coraz większą popularnością cieszą się drukarki sieciowe. Często w domach użytkownicy posiadają więcej niż jedno urządzenie podłączone do sieci, z którego

Bardziej szczegółowo

Administratora CSIZS - OTM

Administratora CSIZS - OTM Powykonawcza Dokumentacja Wykonawca: Asseco Poland S.A. Ul. Olchowa 14, 35-322 Rzeszów Informacje o dokumencie: Autor Zespół ds. Wytwarzania i Analizy Tytuł Produkt 33.3 Dokumentacja administratora OTM

Bardziej szczegółowo

Dokumentacja aplikacji Szachy online

Dokumentacja aplikacji Szachy online Projekt z przedmiotu Technologie Internetowe Autorzy: Jakub Białas i Jarosław Tyma grupa II, Automatyka i Robotyka sem. V, Politechnika Śląska Przedmiot projektu: Aplikacja internetowa w języku Java Dokumentacja

Bardziej szczegółowo

IBM SPSS Statistics Version 22. Windows - Instrukcja instalacji (licencja wielokrotna)

IBM SPSS Statistics Version 22. Windows - Instrukcja instalacji (licencja wielokrotna) IBM SPSS Statistics Version 22 Windows - Instrukcja instalacji (licencja wielokrotna) Spis treści Instrukcja instalacji.......... 1 Wymagania systemowe........... 1 Instalowanie produktu............ 1

Bardziej szczegółowo

ZSBD ćwiczenie 4. Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. Wymagania: ZSBD ćwiczenie 4

ZSBD ćwiczenie 4. Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. Wymagania: ZSBD ćwiczenie 4 Zaawansowane Systemy Bazy Danych - ZSBD ZSBD ćwiczenie 4 Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. ZSBD ćwiczenie 4 W ramach tych i dwóch kolejnych ćwiczeń zapoznacie się

Bardziej szczegółowo

BACKUP BAZ DANYCH FIREBIRD

BACKUP BAZ DANYCH FIREBIRD BACKUP BAZ DANYCH FIREBIRD SPIS TREŚCI Informacje ogólne... 2 Tworzenie projektu... 2 Krok 1: Informacje podstawowe... 2 Krok 2: Dane... 3 Backup bazy umieszczonej na serwerze... 3 Bezpośredni backup pliku

Bardziej szczegółowo

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym 1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle

Bardziej szczegółowo

XML w elektronicznej wymianie danych i integracji aplikacji

XML w elektronicznej wymianie danych i integracji aplikacji XML w elektronicznej wymianie danych i integracji aplikacji Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Patryk Czarnik (MIMUW) 11 EDI XML 2007/08 1 /

Bardziej szczegółowo

Tomasz Grześ. Systemy zarządzania treścią

Tomasz Grześ. Systemy zarządzania treścią Tomasz Grześ Systemy zarządzania treścią Co to jest CMS? CMS (ang. Content Management System System Zarządzania Treścią) CMS definicje TREŚĆ Dowolny rodzaj informacji cyfrowej. Może to być np. tekst, obraz,

Bardziej szczegółowo

Programowanie w Javie

Programowanie w Javie Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student

Bardziej szczegółowo

JAX-RS czyli REST w Javie. Adam Kędziora

JAX-RS czyli REST w Javie. Adam Kędziora JAX-RS czyli REST w Javie Adam Kędziora Webservice Usługa sieciowa (ang. web service) komponent programowy niezależny od platformy i implementacji, dostarczający określonej funkcjonalności. SOAP,UDDI,XML,WSDL

Bardziej szczegółowo

RPC Remote Procedural Call. Materiały do prezentacji można znaleźć na stronie: http://www.houp.info/rpc

RPC Remote Procedural Call. Materiały do prezentacji można znaleźć na stronie: http://www.houp.info/rpc RPC Remote Procedural Call Materiały do prezentacji można znaleźć na stronie: http://www.houp.info/rpc 1 Wprowadzenie Podstawowe założenia RPC: Program uruchamiany na maszynie A może wywołać procedurę

Bardziej szczegółowo

World Wide Web? rkijanka

World Wide Web? rkijanka World Wide Web? rkijanka World Wide Web? globalny, interaktywny, dynamiczny, wieloplatformowy, rozproszony, graficzny, hipertekstowy - system informacyjny, działający na bazie Internetu. 1.Sieć WWW jest

Bardziej szczegółowo

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

Usługi WWW. dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Budowa aplikacji sieciowych. Usługi WWW dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Usługi WWW W3C Working Group, Web Services Architecture,

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Instalacja roli kontrolera domeny, Aby zainstalować rolę kontrolera domeny, należy uruchomić Zarządzenie tym serwerem, po czym wybrać przycisk

Bardziej szczegółowo

Bezpieczeństwo systemów komputerowych. Java i JavaScript. Java i JavaScript. Java - historia

Bezpieczeństwo systemów komputerowych. Java i JavaScript. Java i JavaScript. Java - historia Bezpieczeństwo systemów komputerowych Java i JavaScript mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Java i JavaScript używane w celu dodania cech interaktywności do stron WWW mogą

Bardziej szczegółowo

CitiDirect Online Banking - portal CitiDirect EB

CitiDirect Online Banking - portal CitiDirect EB CitiDirect Online Banking - portal CitiDirect EB Dodatkowa informacja dotycząca konfiguracji zabezpieczeń oprogramowania Java Pomoc Techniczna CitiDirect CitiService Pomoc Techniczna CitiDirect Tel. 0

Bardziej szczegółowo

Nowoczesne zastosowania XML

Nowoczesne zastosowania XML Nowoczesne zastosowania XML XML w elektronicznej wymianie danych, integracji aplikacji i bazach danych Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2011/12 Patryk

Bardziej szczegółowo

Poradnik zetula.pl. Jak założyć konto na zetula.pl. i zabezpieczyć dane na swoim komputerze?

Poradnik zetula.pl. Jak założyć konto na zetula.pl. i zabezpieczyć dane na swoim komputerze? Poradnik zetula.pl Jak założyć konto na zetula.pl i zabezpieczyć dane na swoim komputerze? 1.Wejdź na stronę www.zetula.pl 2.Kliknij na odnośniku Utwórz nowe konto 3.Wypełnij formularz rejestracyjny. Pola

Bardziej szczegółowo

Podłączenie TV przez VPN na Samsung Smart VPN Online Access

Podłączenie TV przez VPN na Samsung Smart VPN Online Access Podłączenie TV przez VPN na Samsung Smart VPN Online Access http://www.vpnonline.pl Co potrzebujemy: TV z możliwością podłączenia do Internetu i aplikacjami takimi jak ipla czy tvnplayer Notebook lub inny

Bardziej szczegółowo

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język

Bardziej szczegółowo

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne Jarosław Kuchta Internetowe Usługi Informacyjne Komponenty IIS HTTP.SYS serwer HTTP zarządzanie połączeniami TCP/IP buforowanie odpowiedzi obsługa QoS (Quality of Service) obsługa plików dziennika IIS

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4 Wdrożenie modułu płatności eservice dla systemu Gekosale 1.4 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie do integracji...

Bardziej szczegółowo

Serwery Statefull i Stateless

Serwery Statefull i Stateless Serwery Statefull i Stateless Wszystkie serwery aplikacji są określone jako stateless podczas projektowania. Te aplikacje nie przetrzymują stałego połączenia z klientem. Wysyłają one pakiety danych na

Bardziej szczegółowo

Samsung Universal Print Driver Podręcznik użytkownika

Samsung Universal Print Driver Podręcznik użytkownika Samsung Universal Print Driver Podręcznik użytkownika wyobraź sobie możliwości Copyright 2009 Samsung Electronics Co., Ltd. Wszelkie prawa zastrzeżone. Ten podręcznik administratora dostarczono tylko w

Bardziej szczegółowo

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce)

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce) emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce) Zastosowanie Rozszerzenie to przeznaczone jest dla właścicieli sklepów internetowych opartych

Bardziej szczegółowo

1 Moduł Inteligentnego Głośnika 3

1 Moduł Inteligentnego Głośnika 3 Spis treści 1 Moduł Inteligentnego Głośnika 3 1.1 Konfigurowanie Modułu Inteligentnego Głośnika........... 3 1.1.1 Lista elementów Modułu Inteligentnego Głośnika....... 3 1.1.2 Konfigurowanie elementu

Bardziej szczegółowo

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Pracownia internetowa w każdej szkole (edycja Jesień 2007) Instrukcja numer D2/08_01 Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 2 (D2) Określanie właściwości stron WWW (domyślne pliki startowe, katalogi wirtualne,

Bardziej szczegółowo