Web Service implementacja aplikacji klienta usługi

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

Download "Web Service implementacja aplikacji klienta usługi"

Transkrypt

1 Web Service implementacja aplikacji klienta usługi Marek Lewandowski, Paweł Kędziora Politechnika Poznańska

2 Spis treści: 1 Technologia Web Service Definicja Web Service Architektura Web Service Protokół SOAP Język WSDL Rejestr UDDI Przykładowa aplikacja Aplikacja standardowa Aplikacja klient Web Service Klient Web Service Środowiska wspierające tworzenie aplikacji klienta usług sieciowych Schemat postępowania Java Microsoft.NET Borland Delphi Oracle Forms Lotus Designer Borland C++ Builder Php C/C Ada Środowiska nie zapewniające wsparcia w procesie tworzenia aplikacji klienta usług sieciowych Rozwiązanie manualne Rozwiązanie półautomatyczne Podsumowanie Literatura:

3 1 Technologia Web Service 1.1 Definicja Web Service Web Service to zwarty, samodokumentujący się komponent programowy niezależny od platformy i implementacji dostarczający określonej funkcjonalności. Komponent ten może zostać opublikowany w sieci komputerowej przez swego autora, a następnie odnaleziony i wywołany w trybie zdalnego wykonania przez twórcę aplikacji konsumenckiej. Technologia Web Service wykorzystuje szereg rozwiązań informatycznych, m.in.: - SOAP służący do przekazywania zdalnych wywołań, - WSDL służący do dystrybucji parametrów połączeń sieciowych, - UDDI służący do rejestracji udostępnianych komponentów usługowych. 1.2 Architektura Web Service Idea działania usługi Web Service została przedstawiona na rysunku Zarówno aplikacja (Service Requester), żądająca wywołania kodu zdalnego modułu, jak i komponent Web Service (Service Provider) go udostępniający, pobierą interfejs kodu z określonego miejsca w sieci Internet (Service Broker). Zarówno żądanie wywołania zdalnej usługi jak i zwracany rezultat przekazywane są za pomocą komunikatu SOAP (patrz: 1.3 Protokół SOAP). Interfejs kodu przekazywany jest stronom z wykorzystaniem dokumentu WSDL (patrz: 1.4 Język WSDL), który przechowywany jest w bazie danych UDDI (patrz: 1.5 Rejestr UDDI). Rys. 1: Ogólna idea Web Service 3

4 1.3 Protokół SOAP SOAP (Simple Object/Open Access Protocol) jest protokołem opartym o XML (extensible Markup Language), umożliwiającym aplikacjom wymianę komunikatów poprzez protokół sieciowy - zazwyczaj HTTP (HyperText Transfer Protocol). W ogólności, aplikacje wykorzystujące SOAP mogą być zaimplementowane w różnych językach i pracować na różnych platformach. Komunikacja sieciowa może odbywać się na dwa sposoby: - w stylu RPC (Remote Procedure Call) - komunikacji dokumentowej Powyższe tryby komunikacji różnią się formą przekazywania parametrów: w trybie RPC komponentowi przekazywana jest lista parametrów wraz z ich bieżącymi wartościami, a w trybie komunikacji dokumentowej usługa otrzymuje tylko jeden parametr, którym jest dokument XML. Zazwyczaj tryb RPC korzysta z komunikacji synchronicznej, a tryb dokumentowy z komunikacji asynchronicznej. Schemat komunikacji w trybie dokumentowym przedstawiony został na rysunku 1.3.1: Rys. 2: Komunikacja SOAP w trybie dokumentowym. Wywołanie metody przez klienta jest konwertowane do dokumentu XML. Argumenty poddawane są serializacji (konwertowane do ciągu bajtów reprezentowanego heksadecymalnie). Tak zbudowany dokument XML nazywany komunikatem SOAP przekazywany jest z wykorzystaniem protokołu sieciowego do zdalnej usługi, która po deserializacji argumentów uruchamia żądaną metodę i analogicznym algorytmem przekazuje zwrotnie rezultat jej wykonania. 4

5 Komunikat SOAP składa się z następujących elementów: - element obowiązkowy <Envelope> - oznaczający, iż dokument XML jest komunikatem SOAP, - element opcjonalny <Header> - zawierający informacje nagłówkowe, - element obowiązkowy <Body> - zawierający informacje o żądaniu i odpowiedzi, - element opcjonalny <Fault> - zawierający opis błędów, jakie wystąpiły podczas przetwarzania komunikatu. Poniższy rysunek (rys ) zawiera przykładowy komunikat SOAP żądający wywołania komponentu o nazwie demo, zawierającego funkcję multiply (int val1, int val2). Przykład pokazuje przekazanie do funkcji dwóch parametrów multiply (val1 := 3, val2 := 2). Usługa zwraca odpowiedź, również w formacie komunikatu SOAP wynik iloczynu parametrów val1 i val2. Rys. 3: Przykładowy komunikat - żądanie SOAP. Rys. 4: Przykładowy komunikat odpowiedź SOAP. 5

6 1.4 Język WSDL WSDL (Web Service Description Language) jest opisem interfejsu komponentu Web Service. Klient usługi sieciowej może dokonać automatycznej transformacji tego opisu do kodu źródłowego obsługującego komunikację sieciową z komponentem Web Service Proxy w wybranym języku programowania. Opisywana transformacja może mieć charakter statyczny (dokonywana na etapie kompilacji) lub dynamiczny (dokonywana podczas wykonywania aplikacji klienta). WSDL jest językiem znaczników XML służącym do opisu technicznych parametrów połączenia sieciowego aplikacji klienta i komponentu Web Service. Strukturę znaczników dokumentu WSDL przedstawia rysunek 1.4.1: Rys. 5: Struktura znaczników dokumentu WSDL. Znaczniki w dokumencie WSDL: - <definitions> - otacza dokument, - <service>, <port> - definiują adresy punktów dostępowych dla usługi, - <porttype> - deklaracja funkcji biznesowych oferowanych przez usługę, - <binding> - określają metody kodowania parametrów wywołania i parametrów zwrotnych usługi. 6

7 1.5 Rejestr UDDI UDDI (Universal Description, Discovery and Integration) jest specyfikacją bazy danych dostępnych komponentów Web Service. UDDI ma na celu uproszczenie procesu dystrybucji dokumentów WSDL i semantyki komponentów usługowych. Taka baza danych przeszukiwana jest przez autorów aplikacji klientów w celu odnalezienia żądanych komponentów. Bazy danych UDDI deklarują dostępne usługi posługując się trzema poziomami opisu: - White Pages podstawowe dane kontaktowe dostawcy usługi, - Yellow Pages lokalizacja usługi w taksonomiach kategoryzacyjnych, - Green Pages techniczny opis usługi i jej semantyki, wskaźnik do pliku WSDL. Rysunek przedstawia cykl życia usługi Web Service z punktu widzenia jej deklaracji w UDDI: Rys. 6: Cykl życia usługi Web Service. Cykl życia usługi Web Service: - implementacja komponentu i jego rejestracja w UDDI, - wyszukanie opisu komponentu i implementacja aplikacji klienta, - uruchomienie aplikacji klienta i zdalne wywołanie usługi. 7

8 2 Przykładowa aplikacja 2.1 Aplikacja standardowa Punktem wyjścia do dalszej analizy jest przykładowa aplikacja (formularz rejestracji wniosku o przyznanie zaliczki alimentacyjnej), której główną formatkę przedstawia poniższy rysunek: Rys. 7: Formularz wprowadzania danych osobowych przykładowej aplikacji. Użytkownik, chcąc poprawnie wypełnić wniosek, wprowadza wymagane dane dotyczące wnioskodawcy. Wsparcie ze strony systemu ogranicza się do udostępnienia użytkownikowi list wyboru z predefiniowanymi wartościami dla pewnych pól 8

9 (np. obywatelstwo, stan cywilny). Osoba obsługująca program nie ma możliwości weryfikacji poprawności wprowadzanych danych. Nie jest dostępne również ułatwienie polegające na przykład na uzupełnianiu brakujących wartości pól formularza, po wprowadzeniu danych jednoznacznie identyfikujących wnioskodawcę (np. PESEL). 2.2 Aplikacja klient Web Service Postanowiono rozszerzyć funkcjonalność przykładowej aplikacji o rozwiązania ułatwiające pracę użytkownikowi. Zaimplementowano trzy usługi Web Service: - Weryfikacja danych osobowych bez przekazywania poprawnych danych celem jest weryfikacja poprawności danych osobowych przekazanych przez użytkownika. Usługa wskazuje jedynie, które informacje nie są poprawne. - Weryfikacja danych osobowych z przekazaniem poprawnych danych - celem jest weryfikacja poprawności danych osobowych przekazanych przez użytkownika. Usługa wskazuje, które informacje nie są poprawne oraz podaje poprawne wartości błędnych danych. - Uzupełnianie danych osobowych celem jest dostarczenie nowych, nieznanych użytkownikowi wartości danych osobowych. Użytkownik przekazuje dane niezbędne do identyfikacji wnioskodawcy, a usługa wypełnia wszystkie brakujące pola formularza poprawnymi wartościami. Jeżeli identyfikacja wnioskodawcy nie będzie pełna (kilka osób spełniających kryteria wyszukiwania), użytkownikowi zostaną zaprezentowane wszystkie wyniki. Jako przykładowe rozwiązanie zaimplementowano aplikację udostępniającą formularz do wprowadzania danych osobowych oraz zawierającą wywołania powyżej opisanych usług Web Service: Rys. 8: Formularz wprowadzania danych przykładowej aplikacji wykorzystującej usługi Web Service. 9

10 Rys. 9: Weryfikacja poprawności wprowadzanych danych bez przekazywania poprawnych wartości (pola z błędnymi danymi podświetlone kolorem czerwonym). Rys. 10: Weryfikacja poprawności wprowadzonych danych z przekazaniem poprawnych wartości (pola z błędnymi danymi podświetlone kolorem czerwonym, poprawne wartości wpisane w pola). Rys. 11: Uzupełnianie danych osobowych (formularz z uzupełnionymi danymi; weryfikacja niejednoznaczna: kilka osób spełniających wyniki zapytania aktywny przycisk następna strona, wciśnięcie którego powoduje prezentację użytkownikowi danych kolejnej osoby). 10

11 3 Klient Web Service 3.1 Środowiska wspierające tworzenie aplikacji klienta usług sieciowych Schemat postępowania Wiele środowisk programowania zapewnia programistom wsparcie w procesie tworzenia klientów usług sieciowych (w postaci kreatorów generujących klasy pieńki usług i klasy proxy odpowiedzialne za komunikację z dostawcą Web Service, lub w postaci gotowych bibliotek umożliwiających wywoływanie zdalnych usług i prezentację ich rezultatów). Programista może się więc skoncentrować na tworzeniu interfejsu użytkownika i logiki biznesowej aplikacji. Złożony proces implementacji komunikacji z usługą sieciową spoczywa na środowisku programistycznym. Rys. 12: Kolejne kroki tworzenia i działania klienta Web Service w przypadku środowiska z kreatorem szkieletu aplikacji. W poniższych podrozdziałach zaprezentowano kolejne kroki procesów tworzenia klientów usług sieciowych w różnych środowiskach i językach programowania. 11

12 3.1.2 Java Język Java, najpowszechniej używany i intensywnie rozwijany, zapewnia bardzo dobre wsparcie korzystania z usług Web Service. Aby ułatwić implementację obsługi protokołu SOAP można skorzystać z biblioteki JAX-RPC (Java API for XML-based RPC). Biblioteka ta zapewnia narzędzie (wscompile), które znajduje i odczytuje dokument WSDL, a następnie generuje pieniek (ang. stub) po stronie klienta. Wygenerowane pieńki są klasami i interfejsami języka JAVA, które będą mogły być wywoływane przez programistę. Pieniek stanowi interfejs pomiędzy aplikacją klienta a serwerem jeśli usługa Web Service znajdująca się na serwerze oferuje metodę filling(), to wygenerowany pieniek, również będzie zawierał metodę o takiej nazwie. Programista chcąc skorzystać z metody filling() usługi sieciowej, wywołuje metodę filling() swojego pieńka, który przejmuje przekazane mu parametry funkcji i zamienia je na żądanie wysyłane do komponentu Web Service. Żądanie wysyłane jest za pomocą protokołu HTTP z wykorzystaniem opisanego wcześniej protokołu SOAP. Tworzenie aplikacji klientów usług Web Service jest bardzo dobrze wspierane przez praktycznie wszystkie środowiska stworzone dla języka Java (m.in. Eclipse, JDeveloper, NetBeans). Każde z tych środowisk wyposażone jest w kreator tworzenia pieńka usługi Web Service, który krok po kroku przeprowadza programistę przez cały proces: od znalezienia dokumentu WSDL, poprzez generowanie klas i interfejsów usługi zdalnej, aż do stworzenia szkieletu aplikacji klienta. Poniższe ilustracje pokazują przykładowy scenariusz utworzenia klienta usługi Web Service w środowisku JDeveloper. Rys. 13: Wybór Business Tier -> Web Services -> Java Web Service Proxy z menu kontekstowego nowego projektu. 12

13 Rys. 14: Wskazanie pliku WSDL i pliku mapowań. Rys. 15: Zakończenie pracy kreatora: lista metod udostępnianych przez komponent. 13

14 Rys. 16: Ostateczna lista plików i pakietów stworzonych podczas generowania klienta usługi Web Service z wykorzystaniem dostępnego pliku WSDL. 14

15 Rys. 17: Przykładowa funkcja wywołująca (za pomocą pieńka web) zdalną metodę. Wywołanie funkcji filling, wypełniającej dane osobowe w formularzu użytkownika, znajduje się w linii: response = (port.filling(request)); Obiekt port jest instancją klasy WSPServicePortClient, która w swoim konstruktorze (pośrednio tworząc również kilka innych obiektów) tworzy pieniek usługi sieciowej: public class WSPServicePortClient { private project1.wspservice_porttype _port; public WSPServicePortClient() throws Exception { ServiceFactory factory = ServiceFactory.newInstance(); _port = ((project1.wspservice_service)factory.loadservice(project1.wspservice_service.c lass)).getwspserviceport(); }... } public interface WSPService_Service extends javax.xml.rpc.service { public project1.wspservice_porttype getwspserviceport() throws javax.xml.rpc.serviceexception; } public class WSPService_Service_Impl extends oracle.j2ee.ws.client.basicservice implements project1.wspservice_service { public project1.wspservice_porttype getwspserviceport() { String[] roles = new String[] {}; HandlerChainImpl handlerchain = new HandlerChainImpl(getHandlerRegistry().getHandlerChain(ns1_WSPServicePort_ QNAME)); handlerchain.setroles(roles); project1.proxy.runtime.wspservicebinding_stub stub = new project1.proxy.runtime.wspservicebinding_stub(handlerchain); try { stub._initialize(super.internaltyperegistry); 15

16 } catch (JAXRPCException e) { throw e; } catch (Exception e) { throw new JAXRPCException(e.getMessage(), e); } return stub; } } Obiekt pieńka zajmuje się wywołaniem funkcji serializujących i deserializujących (przygotowanie i konsumpcja komunikatów SOAP zawierających rezultat działania usługi): { QName type = new QName("http://wsp/service", "filling"); CombinedSerializer serializer = new project1.runtime.filling_literalserializer(type, DONT_ENCODE_TYPE); registerserializer(mapping,project1.filling.class, type, serializer); } public Filling_LiteralSerializer(QName type, boolean encodetype) { super(type, true, encodetype); setsoapversion(soapversion.soap_11); } Wynik działania przypisywany jest zmiennej response: response = (port.filling(fill)).getresult(); Przykładowy kod odpowiedzialny za konsumpcję rezultatu działania usługi Web Service (wypełnienie odpowiednich pól formularza i, jeśli to wskazane, aktywacja przycisków umożliwiających wyświetlenie danych osobowych większej liczby osób): response = p.filling(); Consument c = new Consument(this); c.filling_consume(resp, turn); public void filling_consume(wspmultiresponsevo response, Integer turn) { handlemultistatus(response, turn); } private void handlemultistatus (WSPMultiResponseVO response, Integer turn) { switch (response.getstatus()) { case 1: panel.getfield("error_field").settext("wsp_filling_unauthorized"); break; case 2: panel.getfield("error_field").settext("wsp_filling_invalid"); break; case 3: panel.getfield("error_field").settext("wsp_filling_unauthorized_atr"); break; case 0: getallattrvalues(response.getattributes(), turn); break; default: panel.getfield("error_field").settext("unknown_error: "+response.getstatus()); } } 16

17 private void getallattrvalues(attrvalarrayvo[] attrvalarrayvos, Integer turn) { try { if (turn >= attrvalarrayvos.length turn < 0) { return; } panel.next_page.setenabled(true); panel.prev_page.setenabled(true); for (int j=0; j<(attrvalarrayvos[turn].getattributes()).length; j++) { String name = new String(); String value = new String(); name = (attrvalarrayvos[turn].getattributes())[j].getattrname(); value = (attrvalarrayvos[turn].getattributes())[j].getattrval(); JTextField field = panel.getfield(name); field.settext(value); } ++turn; if (turn.equals(attrvalarrayvos.length)) { panel.next_page.setenabled(false); } --turn; if (turn<=0) { panel.prev_page.setenabled(false); } } catch (Exception e) { System.out.println(e.getMessage()); } } Microsoft.NET Środowisko.NET firmy Microsoft, podobnie jak opisane w punkcie 2.1 środowiska stworzone do kodowania w języku Java, również bardzo dobrze wspiera programistę podczas tworzenia aplikacji wykorzystujących usługi Web Service. Ogólna idea tworzenia aplikacji klienta jest bardzo podobna do rozwiązania znanego z Javy (użycie kreatora, odnalezienie dokumentu WSDL, oprogramowanie aplikacji klienta, itd). Środowisko.NET umożliwia tworzenie aplikacji klientów we wszystkich (ponad 20) wspieranych przez siebie językach (m.in. Visual C#, Visual Basic, Visual C++, Visual J#). 1 Komponent, do którego programista się odwołuje, został napisany w języku Visual Basic. Udostępniona metoda filling() nie przyjmuje parametrów wejściowych, zwraca typ złożony DataSet i wygląda następująco: 1 Oprócz wspomnianych również: APL, Fortran, Pascal, Haskell, Scheme, Curriculum, Mondrian, Perl, Pyton, COBOL, Microsoft JScript, SmallTalk, Eiffel, Oberon, RPG, Component Pascal, Merkury, Nemerle, Standard ML, Forth, Oz. 17

18 Rys. 18: Funkcja filling() komponentu Web Service w języku Visual Basic. Poniższe rysunki pokazują przykładowy scenariusz tworzenia klienta usługi Web Service za pomocą języka Visual Basic. Rys. 19: Utworzenie nowego projektu. 18

19 Rys. 20: Stworzenie formatki. Rys. 21: Wybór opcji WebService Proxy Generator z menu Tools w zakładce Code formatki. 19

20 Rys. 22: Wskazanie lokalizacji pliku WSDL. Rys. 23: Zakończenie generowania usługi klienta. Rys. 24: Kod wywoływany po wciśnięciu przycisku na formatce w aplikacji klienta. Wywołanie funkcji filling() komponentu Web Service Borland Delphi 20

21 Środowisko Delphi firmy Borland umożliwia, podobnie jak wcześniej omawiane Java i Microsoft.NET, zarówno manualne jak i automatyczne tworzenie aplikacji klienta korzystającej z usług Web Service. Aby automatycznie wygenerować klienta usługi sieciowej Web Service należy posłużyć się wbudowanym w środowisko Delphi programem WSDL Importer, który krok po kroku przeprowadzi programistę przez wszystkie etapy tworzenia aplikacji korzystającej z komponentu Web Service. Poniższe rysunki pokazują przykładowy scenariusz tworzenia usługi Web Service za pomocą programu WSDL Importer: Rys. 25: Utworzenie nowego projektu typu Web Service (File New Other zakładka WebServices opcja WSDL Importer). Rys. 26: Wskazanie pliku WSDL. 21

22 Rys. 27: Podgląd wygenerowanego kodu. Po udanym wykonaniu powyższych kroków należy stworzyć klienta, który będzie korzystał z funkcji komponentu, którego dokument WSDL został zaimportowany. Należy stworzyć nową aplikację, dodać do niej elementy: memo, button oraz edit box. Następnie, z zakładki Web Services, należy przeciągnąć na formatkę komponent HTTPRIO. Rys. 28: Wygląd formatki. Komponent HTTPRIO (Remote Invokable Object over an HTTP connection) posiada cztery własności: - URL - Service - WSDLLocation 22

23 - Port Należy wypełnić tylko pierwszą, bądź pozostałe własności. Poprawne wartości własności zostaną użytkownikowi podpowiedziane (zostały zapamiętane podczas importu dokumentu WSDL). Tak utworzony komponent HTTPRIO zawierać będzie wszystkie metody udostępniane przez usługę Web Service, można zatem przystąpić do etapu programowania z wykorzystaniem zdalnych metod. Zaproponowany scenariusz pokazuje, że automatyczne budowanie klienta usług sieciowych w środowisku Delphi jest nieco bardziej skomplikowane niż wykonywanie analogicznego działania w środowiskach języka Java lub za pomocą platformy.net firmy Microsoft. Niemniej jednak, jeśli wziąć pod uwagę możliwość manualnego pisania warstwy importującej dokument WSDL i zapewniającej komunikację z usługa sieciową, to wykorzystanie załączonego programu (WSDL Importer) nieporównywalnie usprawnia i ułatwia pracę programisty. Korzystanie z Web Service możliwe jest tylko od wersji Delphi Oracle Forms Środowisko Oracle Forms pozwala na stosunkowo łatwą (jak podaje producent) integrację istniejącej aplikacji Forms z usługą sieciową dzięki użyciu importera Java. Aby wywoływać metody usług sieciowych z aplikacji Forms należy przeprowadzić dwuetapowe postępowanie: utworzyć pieniek usługi Web Service, a następnie wywołać funkcje pieńka z poziomu aplikacji Forms. Poniższe rysunki pokazują kolejność postępowania podczas tworzenia pieńka usługi Web Service za pomocą środowiska JDeveloper: 23

24 Rys. 29: Wybór Business Tier -> Web Services -> Java Web Service Proxy z menu kontekstowego nowego projektu. Rys. 30: Wskazanie pliku WSDL i pliku mapowań. 24

25 Rys. 31: Zakończenie pracy kreatora: lista metod udostępnianych przez komponent. Rys. 32: Spakowanie plików projektu do archiwum.jar 25

26 Należy wykorzystać stworzony pieniek w aplikacji Oracle Forms. Poniższe rysunki wskazują kolejne kroki niezbędne do wykorzystywania usług Web Service w aplikacji Forms: Należy dodać do zmiennej systemowej PATH pełną ścieżkę dostępu do archiwum.jar utworzonego w poprzednim kroku (tworzenie pieńka usługi Web Service za pomocą środowiska JDeveloper): Rys. 33: Modyfikacja zmiennej systemowej PATH. Należy uruchomić środowisko Oracle Forms, stworzyć nowy formularz, oraz wybrać opcję importu klasy Java i zaimportować niezbędne klasy (wcześniej utworzoną klasę pieńka usługi Web Service, java.lang.float oraz Exception). Kolejnym krokiem jest dodanie przycisku do kanwy i zaprogramowanie wyzwalacza uruchamianego zdarzeniem wciśnięcia przycisku kodem wywołującym metodę usługi Web Service: 26

27 Rys. 34: Import klasy Java z Oracle Forms. Rys. 35: Dodanie przycisku do kanwy i uruchomienie okna edycji procedury wyzwalanej uruchamianej zdarzeniem wciśnięcia przycisku. 27

28 Rys. 36: Kod procedury wyzwalanej wywołującej metodę udostępnianą przez usługę Web Service. Korzystanie z usług sieciowych możliwe jest w Oracle Forms od wersji 9i wzwyż. Użytkownik korzystający z Oracle Forms 4.5 oraz Oracle Forms 6i muszą dokonać migracji do wersji Oracle Forms 9i Lotus Designer W środowisku Lotus Designer firmy IBM aplikacja klient usługi sieciowej Web Service może zostać stworzona jako agent oprogramowany w języku Java bądź LotusScript. Środowisko Lotus Designer (w standardowej wersji) nie posiada wbudowanego mechanizmu umożliwiającego programiście konsumpcję usług Web Service (tworzenie i publikacja usług jest jednak możliwa!). Przed stworzeniem klienta komponentu Web Service należy dodatkowo zainstalować: - Java Software Development Kit (JDK) - Apache Axis framework Po zainstalowaniu powyższych elementów należy odnaleźć interesujący dokument WSDL i wskazać go Apacze Axis aby wygenerował pieniek (w języku Java) usługi Web Service. W tym celu należy, w linii poleceń, wpisać następującą komendę: C:\java\consumer>wsd12java.bat 28

29 Spowoduje to wygenerowanie plików.java, które następnie należy zaimportować do projektu w środowisku Lotus Designer. W celu zaimportowania klas, należy stworzyć bibliotekę Java (Java Library) w sekcji Script Libraries, będącej elementem podrzędnym w stosunku do elementu Shared Code: Rys. 37: Umiejscowienie sekcji Script Libraries w menu bazy danych test_ws w Lotus Domino Designer. Rys. 38: Przyciski tworzenia nowych bibliotek różnych typów w sekcji Script Libraries. Rys. 39: Przycisk Edit Project otwierający okno wyboru klas do zaimportowania. 29

30 Rys. 40: Okno importu klas (w ogólności: plików). Po udanym imporcie plików należy stworzyć nowego agenta. Nowotworzony agent powinien wykorzystywać klasy klienta Apache Axis, które wchodzą w skład Apache framework i stamtąd powinny być zaimportowane. Należy włączyć do projektu cały plik - archiwum JAR, znajdujący się w katalogu Axis. Należy ponadto skopiować pliki commons-discovery-0.2.jar, commons-logging jar z katalogu.\axis\lib do katalogu.\jvm\lib\ext w katalogu Lotus. Aby wprowadzone zmiany zaczęły obowiązywać, należy ponownie uruchomić klienta Lotus. Ostatnim krokiem jest oprogramowanie agenta, np. w następujący sposób: 30

31 Rys. 41: Przykładowy kod Java agenta Lotus. Zaprezentowane powyżej rozwiązanie dostępne jest dla środowiska Lotus od wersji 7. Użytkownik dysponujący wcześniejszymi wersjami powinien dokonać migracji do najnowszej wersji. Jeśli tego nie dokona, będzie musiał kodować komunikację protokołem SOAP manualnie Borland C++ Builder Środowisko C++ Builder firmy Borland dostarcza użytkownikowi program WSDL Importer, który wygląda i działa dokładnie tak samo jak jego odpowiednik wbudowany w środowisko Delphi tego samego producenta (patrz: punkt 2.3 Delphi). Program WSDL Importer dostępny jest od C++ Builder w wersji 6. 31

32 3.1.8 Php Php (Hypertext Preprocessor / Personal Home Page) nie dostarcza niestety wbudowanego mechanizmu obsługi protokołu SOAP, należy więc zainstalować moduł, który umożliwi aplikacji komunikację za pomocą SOAP. Programista ma do wyboru następujące moduły: - PEAR::SOAP, - NuSOAP, - PHP-SOAP. Pierwsze dwa udostępniają więcej możliwości, lecz są całkowicie napisane w php, a zatem są wolniejsze. PHP-SOAP jest w całości napisany w C, zatem jest najszybsze, lecz PEAR::SOAP jest najprostsze w instalacji i w zupełności wystarczające dla zdecydowanej większości zastosowań. Poniższy przykład prezentuje aplikację korzystającą z dokumentu WSDL udostępnionego przez internetowy sklep amazon.com i wyszukującą książki spełniające odpowiednie kryteria: 1. require_once 'SOAP/Client.php'; 2. $wsdl_url = 'http://dokument_wsdl.wsdl'; 3. $WSDL = new SOAP_WSDL($wsdl_url); 4. $client = $WSDL->getProxy(); 5. $params = array( 6. 'PESEL' => " ", 7. 'IMIE1' => 'Edgar', ); 10. $result = $client->filling($params); Objaśnienia: - linia 1 - dołączenie klas z modułu PEAR::SOAP, - linia 2 wskazanie adresu dokumentu WSDL, - linia 3 inicjalizacja obiektu SOAP_WSDL poprzez przekazanie mu adresu dokumentu z linii 2, - linia 4 funkcja getproxy() zwracająca obiekt klienta, - linie 5-9 uzupełnienie parametrów, - linia 10 wywołanie funkcji Web Service. Po wywołaniu funkcji cała inicjatywa przekazywana jest do PEAR::SOAP, który konwertuje przekazywane atrybuty do komunikatu SOAP zapisanego w XML i wysyła żądanie do serwera. Zwracana przez komponent wartość konwertowana jest z SOAP do php i zapisywana w zmiennej $result. 32

33 3.1.9 C/C++ Pracę z usługami Web Service dla języków C/C++ umożliwia pakiet gsoap dostępny w ramach licencji Open Source. Po zainstalowaniu pakietu programista ma do dyspozycji dwa narzędzia: - wsdl2h parser WSDL - soapcpp2 kompilator pieńka i szkieletu aplikacji Parser wsdl2h konwertuje dokument WSDL do pliku nagłówkowego gsoap specyfikującego usługę sieciową. Specyfikacja ta daje zrozumiały dla C/C++ widok funkcjonalności serwera. Plik nagłówkowy jest następnie przetwarzany przez soapcpp2, który generuje kod pieńka i szkielet aplikacji odwołujących się do usługi Web Service. Schemat działania pakietu gsoap dla klienta usługi Web Service przedstawia poniższy rysunek: Rys. 42: Schemat działania pakietu gsoap dla klienta usługi Web Sercive. Aby uzyskać plik nagłówkowy z dokumentu WSDL, należy wpisać w linii poleceń poniższą komendę: wsdl2h -o outfile.h infile.wsdl gdzie infile.wsdl jest adresem dokumentu WSDL, a output.h to ścieżka do pliku wynikowego. Wygenerowanie pieńka i szkieletu aplikacji odbywa się poprzez wpisanie w linii poleceń poniższej komendy: 33

34 soapcpp2 -c outfile.h gdzie outfile.h jest plikiem powstałym w wyniku działania wsdl2h. Użycie przełącznika -c powoduje, że wygenerowany zostanie kod w czystym języku C. Dalszy rozwój aplikacji nie powinien już nastręczać programiście większych trudności chcąc wywołać funkcję zdalnego komponentu Web Service, wywołuje od odpowiednią metodę wygenerowanego wcześniej pieńka. Wszystkimi trudnościami związanymi z protokołem SOAP oraz komunikacją z usługą zajmuje się gsoap. Pakiet gsoap może być stosowany zarówno przez użytkowników systemów operacyjnych z rodziny Windows, jak i Linux Ada W celu implementacji klienta usług Web Service w języku Ada można skorzystać z biblioteki AWS (Ada Web Server), rozwijanej przez grupę GNAT i udostępnianej w ramach licencji GNU. Pierwszym krokiem do utworzenia klienta jest wygenerowanie pieńka zawierającego interfejs funkcji usługi sieciowej Web Service, za pomocą funkcji wsdl2aws, której składnia wywołania wygląda następująco: wsdl2aws [options] <file URL> na przykład: $ wsdl2aws -noskel Przełącznik noskel wskazuje, iż ma zostać wygenerowany tylko pieniek, bez szkieletu aplikacji. Pełna lista przełączników znajduje się w dokumentacji technicznej biblioteki AWS (patrz: 18 pozycja w rozdziale Literatura). Funkcja wsdl2aws generuje stosunkowo dużą liczbę plików, wśród których znajduje się, najbardziej programistę interesujący, plik pieńka usługi Web Service, a w nim: function filling (parametry) return zwracany_typ; -- Raises SOAP.SOAP_Error if the procedure fails 34

35 Chcąc wywołać metodę usługi sieciowej, programista wywołuje funkcję pieńka: with Ada.Text_IO; with WSPServicePortClient.Client; procedure filling is use Ada; package LFIO is new Text_IO.Float_IO (Long_Float); begin Text_IO.Put_Line ("Wynik dzialania funkcji filling: "); LFIO.Put (WSPServicePortClient.Client.filling (parametry), Aft => 2, Exp => 0); end filling; 3.2 Środowiska nie zapewniające wsparcia w procesie tworzenia aplikacji klienta usług sieciowych Rozwiązanie manualne Rys. 43: Kolejność postępowania w procesie tworzenia aplikacji klienta usługi Web Service w przypadku korzystania ze środowiska bez kreatora szkieletu aplikacji. 35

36 Manualna implementacja klienta usługi sieciowej, bez żadnego wsparcia ze strony środowiska programistycznego, jest procesem żmudnym, lecz jak najbardziej wykonalnym. Programista, korzysta ze zbioru definicji zawartych w dokumencie WSDL. Usługi zdefiniowane są z użyciem sześciu głównych elementów: - types definicja typów danych używanych do opisu wymienianych komunikatów, - message abstrakcyjna definicja wymienianych danych, - porttype zbiór abstrakcyjnych operacji, z których każda związana jest z komunikatem wchodzącym i komunikatem (komunikatami) wychodzącymi, - binding specyfikuje protokół i format danych dla operacji i komunikatów poszczególnych elementów porttype, - port specyfikuje adres wiązania (binding), przez co tworzy pojedynczy punkt docelowy (endpoint), - service scala zbiór odpowiadających portów. WSDL może opisywać cztery podstawowe możliwości transmisji, które są wspierane przez punkt docelowy (endpoint): - one-way punkt docelowy otrzymuje komunikat, - request-response punkt docelowy otrzymuje komunikat i wysyła związaną z nim odpowiedź, - solicit-response punkt docelowy wysyła komunikat i otrzymuje związaną z nim odpowiedź, - notification punkt docelowy wysyła komunikat. Zalecane jest korzystanie z pierwszych dwóch transmisji (zdefiniowane są dla nich wiązania) w dokumencie WSDL odwołanie do nich następuje za pomocą elementu operation. Fragment przykładowego dokumentu WSDL z opisem poszczególnych elementów: <complextype name="wsprequestvo"> <sequence> <element name="attributes" nillable="true" type="tns:attrvalarrayvo"/> <element name="n" type="int"/> </sequence> </complextype> <complextype name="attrvalarrayvo"> <sequence> <element maxoccurs="unbounded" minoccurs="0" name="attributes" nillable="true" type="tns:attrvalvo"/> </sequence> </complextype> <complextype name="attrvalvo"> <sequence> <element name="attrname" nillable="true" type="string"/> <element name="attrval" nillable="true" type="string"/> </sequence> </complextype> <complextype name="filling"> <sequence> 36

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

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

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

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

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

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 Streszczenie Web Services to technologia implementacji rozproszonych komponentów programowych

Bardziej szczegółowo

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

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

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

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

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

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

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

Budowa aplikacji w technologii. Enterprise JavaBeans. Maciej Zakrzewicz PLOUG

Budowa aplikacji w technologii. Enterprise JavaBeans. Maciej Zakrzewicz PLOUG Budowa aplikacji w technologii Enterprise JavaBeans Maciej Zakrzewicz PLOUG Plan prezentacji Przegląd architektur aplikacji rozproszonych: CORBA, SOAP, EJB Wprowadzenie do Enterprise JavaBeans (EJB) Budowa

Bardziej szczegółowo

Wywoływanie metod zdalnych

Wywoływanie metod zdalnych Wywoływanie metod zdalnych model systemu Wywoływanie metod zdalnych aplikacja kliencka interfejs obiekt serwer Podejście obiektowe do budowy systemów rozproszonych proxy szkielet sieć Istota podejścia

Bardziej szczegółowo

Plan prezentacji. Budowa aplikacji w technologii Enterprise JavaBeans. Przegląd architektur: CORBA. Cele budowy aplikacji rozproszonych

Plan prezentacji. Budowa aplikacji w technologii Enterprise JavaBeans. Przegląd architektur: CORBA. Cele budowy aplikacji rozproszonych Plan prezentacji Budowa aplikacji w technologii Enterprise JavaBeans Przegląd architektur aplikacji rozproszonych: CORBA,, Wprowadzenie do Enterprise JavaBeans () Budowa komponentów sesyjnych Budowa komponentów

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

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

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

public interface TravelAgent { public void makereservation(int cruiseid, int cabinid, int customerid, double price); }

public interface TravelAgent { public void makereservation(int cruiseid, int cabinid, int customerid, double price); } Web Services 1. Podstawy usług sieciowych. SOAP, WSDL. 2. Usługi sieciowe w JAX-RPC. interfejs punktu końcowego, korzystanie z usługi z poziomu komponentu EJB, programy klienckie, narzędzia i deskryptory

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

Programowanie Obiektowe GUI

Programowanie Obiektowe GUI Programowanie Obiektowe GUI Swing Celem ćwiczenia jest ilustracja wizualnego tworzenia graficznego interfejsu użytkownika opartego o bibliotekę Swing w środowisku NetBeans. Ponadto, ćwiczenie ma na celu

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

Podstawy Programowania 2

Podstawy Programowania 2 Podstawy Programowania 2 Laboratorium 7 Instrukcja 6 Object Pascal Opracował: mgr inż. Leszek Ciopiński Wstęp: Programowanie obiektowe a programowanie strukturalne. W programowaniu strukturalnym, któremu

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

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1).

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię usług sieciowych (ang. Web Services).

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

1. Uruchomić i skonfigurować środowisko tworzenia aplikacji i serwer aplikacji.

1. Uruchomić i skonfigurować środowisko tworzenia aplikacji i serwer aplikacji. Temat Stworzenie systemu składającego się z prostej usługi sieciowej (ang. web service) oraz komunikującej się z nią aplikacji klienckiej umożliwiającej dostęp do usługi przez przeglądarkę internetową.

Bardziej szczegółowo

Wykład 6 Dziedziczenie cd., pliki

Wykład 6 Dziedziczenie cd., pliki Wykład 6 Dziedziczenie cd., pliki Autor: Zofia Kruczkiewicz 1. Dziedziczenie cd. 2. Pliki - serializacja Zagadnienia 1. Dziedziczenie aplikacja Kalkultory_2 typu Windows Forms prezentująca dziedziczenie

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

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 Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha

Bardziej szczegółowo

Integracja Obieg Dokumentów - GiS Spis treści

Integracja Obieg Dokumentów - GiS Spis treści Integracja Obieg Dokumentów - GiS Spis treści 1.Opis integracji.... 2 2.Interfejs po stronie Obiegu Dokumentów... 4 3.Interfejs po stronie Gis-u.... 7 4.Schematy przesyłanych plików xml.... 8 1 1. Opis

Bardziej szczegółowo

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8 Programowanie Urządzeń Mobilnych Laboratorium nr 7, 8 Android Temat 1 tworzenie i uruchamianie aplikacji z użyciem Android SDK Krzysztof Bruniecki 1 Wstęp Platforma Android jest opartym na Linuxie systemem

Bardziej szczegółowo

16) Wprowadzenie do raportowania Rave

16) Wprowadzenie do raportowania Rave 16) Wprowadzenie do raportowania Rave Tematyka rozdziału: Przegląd wszystkich komponentów Rave Tworzenie nowego raportu przy użyciu formatki w środowisku Delphi Aktywacja środowiska Report Authoring Visual

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

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

Rozproszone systemy internetowe

Rozproszone systemy internetowe Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Rozproszone systemy internetowe Wprowadzenie do usług WWW (Web Services) Podniesienie potencjału uczelni

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

Wielowarstwowe aplikacje internetowe. Web Services. Autorzy wykładu: Maciej Zakrzewicz Marek Wojciechowski. Web Services

Wielowarstwowe aplikacje internetowe. Web Services. Autorzy wykładu: Maciej Zakrzewicz Marek Wojciechowski. Web Services Web Services Autorzy wykładu: Maciej Zakrzewicz Marek Wojciechowski Web Services Plan wykładu Wprowadzenie do technologii Web Services Architektura Web Services Protokół komunikacyjny SOAP Język opisu

Bardziej szczegółowo

Wprowadzenie do projektu QualitySpy

Wprowadzenie do projektu QualitySpy Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować

Bardziej szczegółowo

ZAPOZNANIE SIĘ Z TWORZENIEM

ZAPOZNANIE SIĘ Z TWORZENIEM LABORATORIUM SYSTEMÓW MOBILNYCH ZAPOZNANIE SIĘ Z TWORZENIEM APLIKACJI MOBILNEJ W J2ME I. Temat ćwiczenia II. Wymagania Podstawowe wiadomości z zakresu języka Java Podstawowa znajomość środowiska Eclipse

Bardziej szczegółowo

System zarządzający grami programistycznymi Meridius

System zarządzający grami programistycznymi Meridius System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu

Bardziej szczegółowo

SOAP i alternatywy. 1. WSDL. 2. Protokoły tekstowe XML-RPC. JSON-RPC. SOAPjr. 3. Protokoły binarne Google Protocol Bufers. Apache Thrift.

SOAP i alternatywy. 1. WSDL. 2. Protokoły tekstowe XML-RPC. JSON-RPC. SOAPjr. 3. Protokoły binarne Google Protocol Bufers. Apache Thrift. SOAP i alternatywy 1. WSDL. 2. Protokoły tekstowe XML-RPC. JSON-RPC. SOAPjr. 3. Protokoły binarne Google Protocol Bufers. Apache Thrift. 1 WSDL WSDL (Web Services Description Language) jest standardem

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

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

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

Usługi sieciowe (Web Services)

Usługi sieciowe (Web Services) Usługi sieciowe (Web Services) Karol Kański Seminarium Systemy Rozproszone 14 października 2010 Agenda 1. Idea i historia usług sieciowych 2. Różne podejścia do tworzenia usług sieciowych 3. Języki opisu

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

Instrukcja pobrania i instalacji. certyfikatu Microsoft Code Signing. wersja 1.4

Instrukcja pobrania i instalacji. certyfikatu Microsoft Code Signing. wersja 1.4 Instrukcja pobrania i instalacji certyfikatu Microsoft Code Signing wersja 1.4 Spis treści 1. WSTĘP... 4 2. TWORZENIE CERTYFIKATU... 4 3. WERYFIKACJA... 9 3.1. WERYFIKACJA DOKUMENTÓW... 9 3.1.1. W przypadku

Bardziej szczegółowo

Hurtownie danych - przegląd technologii

Hurtownie danych - przegląd technologii Hurtownie danych - przegląd technologii Problematyka zasilania hurtowni danych - Oracle Data Integrator Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl www.cs.put.poznan.pl/rwrembel

Bardziej szczegółowo

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI asix Aktualizacja pakietu asix 4 do wersji 5 lub 6 Pomoc techniczna Dok. Nr PLP0016 Wersja:08-12-2010 ASKOM i asix to zastrzeżony znak firmy ASKOM Sp. z o. o.,

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

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

Zaawansowane aplikacje internetowe laboratorium

Zaawansowane aplikacje internetowe laboratorium Zaawansowane aplikacje internetowe laboratorium Web Services (część 2). Celem ćwiczenia jest przygotowanie prostej aplikacji prezentującej technologię usług sieciowych (ang. Web Services). Przygotowana

Bardziej szczegółowo

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

SIMON SAYS ARCHITECTURE! Usługi zdalne. Technologie, techniki i praktyki implementacji SIMON SAYS ARCHITECTURE! Usługi zdalne Technologie, techniki i praktyki implementacji O mnie Bloguję: SIMON-SAYS-ARCHITECTURE.COM Twittuję: www.twitter.com/szymonpobiega Koduję: DDDSample.Net, NetMX, WS-Man.Net

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Celem ćwiczenia jest przygotowanie prostej aplikacji wykorzystującej architekturę CORBA. Aplikacja składa się z usługodawcy (serwera)

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

Analiza i projektowanie aplikacji Java

Analiza i projektowanie aplikacji Java Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie

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

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

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

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152 Wstęp...xv 1 Rozpoczynamy...1 Co to jest ASP.NET?...3 W jaki sposób ASP.NET pasuje do.net Framework...4 Co to jest.net Framework?...4 Czym są Active Server Pages (ASP)?...5 Ustawienia dla ASP.NET...7 Systemy

Bardziej szczegółowo

Administracja Internetowymi systemami baz danych (niestacjonarne) Laboratorium 5. Reporting Services (SSRS), Integration Services (SSIS)

Administracja Internetowymi systemami baz danych (niestacjonarne) Laboratorium 5. Reporting Services (SSRS), Integration Services (SSIS) Administracja Internetowymi systemami baz danych (niestacjonarne) Laboratorium 5 Reporting Services (SSRS), Integration Services (SSIS) Instrukcja do laboratorium V: I. Tworzenie raportów II. Migracja

Bardziej szczegółowo

1. Opis ogólny. 2. Opis techniczny. 3. Wymagania techniczne

1. Opis ogólny. 2. Opis techniczny. 3. Wymagania techniczne Dokumentacja programu e Zoz Opis biblioteki PhantomAPI.dll Wersja 1.22.1.5 Zielona Góra 2010-08-26 1. Opis ogólny Biblioteka programistyczna PhantomAPI.dll służy do integracji oprogramowania zewnętrznego

Bardziej szczegółowo

Oracle Application Express -

Oracle Application Express - Oracle Application Express - Wprowadzenie Wprowadzenie Oracle Application Express (dawniej: HTML DB) to narzędzie do szybkiego tworzenia aplikacji Web owych korzystających z bazy danych Oracle. Od użytkownika

Bardziej szczegółowo

Dokumentacja techniczna API systemu SimPay.pl

Dokumentacja techniczna API systemu SimPay.pl Wprowadzenie Dokumentacja techniczna API systemu SimPay.pl Wersja 1.0 z dnia 24.03.2015 r. API serwisu SimPay.pl opiera się o danych wysyłanych i zwracanych w formie JSON. W przypadku napotkania jakiegokolwiek

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

Konspekt pracy inżynierskiej

Konspekt pracy inżynierskiej Konspekt pracy inżynierskiej Wydział Elektryczny Informatyka, Semestr VI Promotor: dr inż. Tomasz Bilski 1. Proponowany tytuł pracy inżynierskiej: Komunikator Gandu na platformę mobilną Android. 2. Cel

Bardziej szczegółowo

Nexto.API. Przykładowy klient Java 1.6 do systemu zamówień NextoAPI. Przygotował Rafał Ozga 2004-2015 e-kiosk S.A. Maj 2015,

Nexto.API. Przykładowy klient Java 1.6 do systemu zamówień NextoAPI. Przygotował Rafał Ozga 2004-2015 e-kiosk S.A. Maj 2015, Nexto.API Przykładowy klient Java 1.6 do systemu zamówień NextoAPI Przygotował Rafał Ozga 2004-2015 e-kiosk S.A. Maj 2015, Maj 2015, Wersja: 1.5 strona 1 Historia zmian Lp. Data Zmiany 1 28/05/15 Zmiana

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

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 2).

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 2). Zaawansowane aplikacje internetowe - laboratorium Web Services (część 2). Celem ćwiczenia jest przygotowanie prostej aplikacji prezentującej technologię usług sieciowych (ang. Web Services). Przygotowana

Bardziej szczegółowo

Procedury techniczne modułu Forte Kontroling. Pakiety DTS

Procedury techniczne modułu Forte Kontroling. Pakiety DTS Procedury techniczne modułu Forte Kontroling Pakiety DTS Pakiety DTS Strona 2 z 7 Pakiety DTS przeznaczone są do wykorzystywania podczas importu danych z modułu Forte Finanse i Księgowość do modułu Forte

Bardziej szczegółowo

Dokumentacja końcowa projektu z ZPR

Dokumentacja końcowa projektu z ZPR Dokumentacja końcowa projektu z ZPR Temat projektu: Prowadzący projekt: Zespół projektowy: Losowe przeszukiwanie stanów dr inż. Robert Nowak Piotr Krysik Kamil Zabielski 1. Opis projektu Projekt ma za

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

Środowiska i platformy programistyczne

Środowiska i platformy programistyczne Środowiska i platformy programistyczne 1 Rys historyczny lata 80-90: efektywność! Cel: zwiększyć efektywność programisty jedno narzędzie: integracja edytor kodu, funkcje programistyczne (kompilacja, łączenie,

Bardziej szczegółowo

Java JMX. Marcin Werla. Monitorowanie i zarządzanie usługami sieciowymi w Javie. mwerla@man.poznan.pl PCSS/Poznań JUG

Java JMX. Marcin Werla. Monitorowanie i zarządzanie usługami sieciowymi w Javie. mwerla@man.poznan.pl PCSS/Poznań JUG Java JMX Monitorowanie i zarządzanie usługami sieciowymi w Javie Marcin Werla mwerla@man.poznan.pl PCSS/Poznań JUG Plan prezentacji Wprowadzenie Specyfikacja Dodatkowe narzędzia i biblioteki Studium przypadku

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium JavaServer Pages Celem ćwiczenia jest zbudowanie kilku prostych stron internetowych z użyciem technologii JSP. Podczas ćwiczenia wykorzystany zostanie algorytm sortowania bąbelkowego

Bardziej szczegółowo

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans. GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans

Bardziej szczegółowo

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

Dotacje na innowacje. Inwestujemy w waszą przyszłość. PROJEKT TECHNICZNY Implementacja Systemu B2B w firmie Lancelot i w przedsiębiorstwach partnerskich Przygotowane dla: Przygotowane przez: Lancelot Marek Cieśla Grzegorz Witkowski Constant Improvement Szkolenia

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Szkolenie systemu POL-on

Szkolenie systemu POL-on Szkolenie systemu POL-on dr Piotr Rodzik ekspert systemu POL-on Ośrodek Przetwarzania Informacji - Państwowy Instytut Badawczy Al. Niepodległości 188B, 00-608 Warszawa Numer KRS: 0000127372 Sąd Rejonowy

Bardziej szczegółowo

Wykorzystywanie parsera DOM w programach Java i PL/SQL

Wykorzystywanie parsera DOM w programach Java i PL/SQL Wykorzystywanie parsera DOM w programach Java i PL/SQL Maciej Zakrzewicz mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/ Parser DOM Aplikacja DOM API Parser DOM Dokument XML Drzewo DOM Parser

Bardziej szczegółowo

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. Protokół HTTP 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. 1 Usługi WWW WWW (World Wide Web) jest najpopularniejszym sposobem udostępniania

Bardziej szczegółowo

Rozproszone technologie Web Services

Rozproszone technologie Web Services Rozproszone technologie Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 11 kwietnia 2010 Bartłomiej Świercz Rozproszone technologie Wstęp Serwery aplikacji i zdalne usługi Wstęp

Bardziej szczegółowo

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu

Bardziej szczegółowo

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład V Rzut okiem na języki programowania 1 Kompilacja vs. interpretacja KOMPILACJA Proces, który przetwarza program zapisany w języku programowania,

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

Plan wykładu CORBA. Cechy aplikacji rozproszonych. Aplikacje rozproszone

Plan wykładu CORBA. Cechy aplikacji rozproszonych. Aplikacje rozproszone Plan wykładu CORBA Wprowadzenie Architektura CORBA IDL język definicji interfejsów ORB Object Request Broker Usługi i POA Aplikacje CORBA tworzenie serwera tworzenie klienta Aplikacje rozproszone Cechy

Bardziej szczegółowo

Tworzenie i wykorzystanie usług

Tworzenie i wykorzystanie usług Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi

Bardziej szczegółowo

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

Microsoft.NET: LINQ to SQL, ASP.NET AJAX Microsoft.NET: LINQ to SQL, ASP.NET AJAX Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2008 oraz serwer bazy danych SQL Server Express 2005 (lub

Bardziej szczegółowo

Automatyczne generowanie kodu. Marek.Berkan@e-point.pl. 4Developers, 26 marca 2010

Automatyczne generowanie kodu. Marek.Berkan@e-point.pl. 4Developers, 26 marca 2010 4Developers, 26 marca 2010 Zakres wykładu O czym zamierzam opowiedzieć: Przyspieszenie tworzenia aplikacji Ułatwienie utrzymania aplikacji Budowanie kontraktów pomiędzy developerami a innymi uczestnikami

Bardziej szczegółowo

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1 Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,

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

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

Sieciowe programowanie rozproszone SOA, WebServices i systemy gridowe. Krzysztof Banaś Systemy rozproszone 1

Sieciowe programowanie rozproszone SOA, WebServices i systemy gridowe. Krzysztof Banaś Systemy rozproszone 1 Sieciowe programowanie rozproszone SOA, WebServices i systemy gridowe Krzysztof Banaś Systemy rozproszone 1 Technologie WWW Nowszymi sposobami organizacji i technologiami w dziedzinie obliczeń rozproszonych

Bardziej szczegółowo

Programowanie MorphX Ax

Programowanie MorphX Ax Administrowanie Czym jest system ERP? do systemu Dynamics Ax Obsługa systemu Dynamics Ax Wyszukiwanie informacji, filtrowanie, sortowanie rekordów IntelliMorph : ukrywanie i pokazywanie ukrytych kolumn

Bardziej szczegółowo

Instrukcja tworzenia aplikacji bazodanowej opartej o technologię Oracle i platformę.net

Instrukcja tworzenia aplikacji bazodanowej opartej o technologię Oracle i platformę.net Instrukcja tworzenia aplikacji bazodanowej opartej o technologię Oracle i platformę.net Aby móc uzyskaćdostęp do bazy danych z zewnętrznych aplikacji, w tym wypadku aplikacji.net, niezbędne jest wykonanie

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

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