Architektury Usług Internetowych. Laboratorium 2 RESTful Web Services
|
|
- Krystyna Czajkowska
- 6 lat temu
- Przeglądów:
Transkrypt
1 Architektury Usług Internetowych Laboratorium 2 RESTful Web Services Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych opartych na standardzie REST. RESTful Web Services Usługami sieciowymi nazywa się aplikacje klienckie i serwerowe komunikujące się ze sobą poprzez WWW z wykorzystaniem protokoły HTTP. Zakładają one interoperacyjność pomiędzy aplikacjami uruchomionymi na różnych platformach i frameworkach oraz opisy przetwarzane przez aplikacje (np. wykorzystujące XML). Luźno powiązane usługi można łączyć w celu uzyskania skomplikowanych operacji. Usługi oparte na standardzie REST (RESTful Web Services) powinny cechować się bezstanowością. Interakcja z serwerem powinna być odporna na jego restart a cała stanowość (ciąg kilku operacji) powinna być realizowana poprzez odpowiednie parametry w odnośnikach. Standard REST definiuje działanie na zasobach identyfikowanych poprzez URI poprzez operacje zdefiniowane w protokole HTTP: PUT stworzenie nowego zasobu, GET pobranie aktualnego stanu zasobu, POST aktualizacja stanu zasobu, DELETE usunięcie zasobu. Wykorzystanie URI do identyfikacji zasobów, metod HTTP do opisu operacji na nich oraz formatów XML i JSON do opisu danych przesyłanych pomiędzy klientem a serwerem sprawia że usługi typu REST są często używane w połączeniu z rozwiązaniami opartymi na języku JavaScript i technologii AJAX. Zgodnie ze standardem, zasoby powinny być ułożone w hierarchię. Przykładowo w sytuacji gdy podstawowym zasobem będzie książka zawierającego jakiegoś autora możemy założyć następujące adresy: resources/books lista wszystkich książek, resources/books/{id jedna książka o konkretnym id, resources/books/{id/author autor konkretnej książki Michał Wójcik 1
2 W powyższym przykładzie {id jest parametrem typu path param, czyli będącym elementem adresu. Dodatkowo można używać parametrów typu query param, czyli takich, które są doklejane do adresu (po znaku?). Używa się ich raczej do dodatkowego sparametryzowania żądania, nie do identyfikacji zasobów na których działamy. Przykładowo żądanie listy książek z paginacją miało by następujący format: resources/books?offset=10&limit=5. Operacje na zasobach można odwzorować na CRUD, czyli podstawowe operacje wykorzystywane w aplikacjach działających na pamięci trwałej. Poniższa tabela pokazuje odwzorowanie podstawowej akcji na akcje w REST i SQL. Operacja SQL HTTP Create INSERT POST Read SELECT GET Update UPDATE PUT Delete DELETE DELETE Dla powyższych operacji można określić jakie wartości i kody HTTP powinny być zwracane w różnych sytuacjach. Poniższa tabela przedstawia takie zestawienie zarówno dla pobierania kolekcji elementów (np. resoruces/books) jak i pojedynczego konkretnego elementu (no. Resources/books/{id). Operacja Kolekcja Element GET 200 (OK), paginacja, sortowanie 200 (OK), pojedynczy element, 404 (Not Found) PUT 404 (Not Found) 200 (OK), 204 (No Content), 404 (Not Found) POST 201 (Created), Location w nagłówku 404 (Not Found) DELETE 404 (Not Found) 200 (OK), 404 (Not Found) JAX-RS Java API for RESTful Web Services JAX-RS jest standardem tworzenia usług sieciowych zgodnych ze standardem REST na platformie Java/Java EE. Standard jest obowiązkowy w ramach profili Java EE Web i Full profile, co oznacza że powinien być zaimplementowany w każdym serwerze aplikacji. Referencyjną implementacją standardu jest projekt Jersey, który jest wykorzystywany w serwerze aplikacji GlassFish a także może być uruchomiony w dowolnym kontenerze servlewów. Ponieważ serwer Apache Tomcat nie jest dostarczony z implementacją JAX- RS, należy samemu do projektu webowego dodać odpowiednią zależność, tak aby została wdrożona na serwer razem z aplikacją. <dependency> 2014 Michał Wójcik 2
3 <groupid>org.glassfish.jersey.containers</groupid> <artifactid>jersey container servlet</artifactid> <version>2.13</version> </dependency> <dependency> <groupid>org.glassfish.jersey.media</groupid> <artifactid>jersey media json jackson</artifactid> <version>2.13</version> </dependency> Biblioteka jerser-container-servlet zapewnia kontener dla usług sieciowych działający w kontenerze servletu, natomiast jersey-media-json-jackson zapewnia procesor formatu JSON. Jednym ze sposobów uruchomienia usług w aplikacji webowej jest skonfigurowanie centralnego servletu w pliku web.xml, który będzie przekierowywał żądania HTTP do odpowiednich metod skonfigurowanych jako usługi. <servlet> <servlet name>servletcontainer</servlet name> <servlet class> org.glassfish.jersey.servlet.servletcontainer </servlet class> <init param> <param name> jersey.config.server.provider.packages </param name> <param value> pl.gda.pg.eti.kask.aui.rest.resources </param value> </init param> <init param> <param name> jersey.config.server.provider.scanning.recursive </param ame> <param value>false</param value> </init param> </servlet> <servlet mapping> <servlet name>servletcontainer</servlet name> <url pattern>/resources/*</url pattern> </servlet mapping> Usługi oraz ich parametry można definiować za pomocą adres zasobu, 2014 Michał Wójcik 3
4 parametr będący elementem parametr doklejany do parametr wysłany przez formularz metodą domyślna wartość dla parametrów typu query specyfikacja typu MIME przyjmowanego przez specyfikacja typu MIME zwracanego przez pozwana na wstrzyknięcie obiektów: UriInfo zbiór wszystkich parametrów, HttpHeaders nagłówki i ciastka, ServletContext konteks servletu, HttpServletRequest obiek żądania, HttpServletResponse obiekt odpowiedzi. Przykład usługi zwracającej konkretną książkę w formacie public class @Produces(MediaType.APPLICATION_JSON) public Book findbook(@pathparam("id") Integer id) {... Przykład usługi zwracającej listę książek w formacje JSON z obsługą paginacji: 2014 Michał Wójcik 4
5 @Path("/books") public class @Produces(MediaType.APPLICATION_JSON) public Integer size) {... JAX-RS klient Aby przygotować aplikację Java SE będącą klientem dla usługi typu rest można skorzystać z bibliotek dostarczonych przez projekt Jersey. <dependency> <groupid>org.glassfish.jersey.core</groupid> <artifactid>jersey client</artifactid> <version>2.13</version> </dependency> <dependency> <groupid>org.glassfish.jersey.media</groupid> <artifactid>jersey media json jackson</artifactid> <version>2.13</version> </dependency> W celu nawiązania połączenia z serwerem należy stworzyć obiekt Client, następnie z jego pomocą stworzyć obiekt WebTarget, który będzie służył wywoływaniu kolejnych żądań. Client client = ClientBuilder.newClient(); WebTarget root = client.target(address + "/resources/books"); List<Book> books = root.path("").request(mediatype.application_json_type).get(new GenericType<List<Book>>() {); Book book = root.path(1).request().get(book.class); Zabezpieczenie usług Jednym ze sposobów zabezpieczania usług jest zabezpieczenie na poziomie kontenera webowego. Serwer Apache Tomcat pozwala na definiowanie domen bezpieczeństwa opartych różnych mechanizmach (pliki xml, bazy danych, ldap itd), ale dla uproszczenia można skorzystać z domyślnego pliku conf/tomcatusers.xml: 2014 Michał Wójcik 5
6 <?xml version="1.0" encoding="utf 8"?> <tomcat users> <user password="nb" roles="manager script,admin" username="nb"/> <user password="psysiu" roles="reader" username="psysiu"/> <user password="admin" roles="reader,editor" username="admin"/> </tomcat users> Następnie należy zdefiniować role użytkowników w deskryptorze aplikacji webowej WEB-INF/web.xml: <web app> <security role> <role name>editor</role name> </security role> <security role> <role name>reader</role name> </security role> </web app> Aby umożliwić logowanie z wykorzystaniem metody BASIC AUTHENTICATION (pozwalającej na wysłanie loginu i hasła w nagłówku HTTP) należy dodać odpowiedni wpis w deskryptorze web.xml. <web app> <login config> <auth method>basic</auth method> </login config> </web app> Ostatnim elementem w deskryptorze web.xml jest zdefiniowanie które zasoby i strony wymagają uwierzytelniania i autoryzacji: <web app> <security constraint> <web resource collection> <web resource name>management pages</web resource name> <url pattern>/list_books.html</url pattern> <url pattern>/resources/*</url pattern> </web resource collection> <auth constraint> <role name>editor</role name> <role name>reader</role name> </auth constraint> </security constraint> </web app> Z poziomu kodu usługi autoryzację można zrealizować za pomocą obiektu typu SecuriyConext uzsykanego za pomocą 2014 Michał Wójcik 6
7 @Path("/books") public class BooksResource @Produces(MediaType.APPLICATION_JSON) public Integer size) { if (securitycontext.isuserinrole("reader")) {... else {... Aby umożliwić przekazanie loginu i hasła w nagłówkach HTTP z poziomu klienta napisanego w Java SE należy skorzystać z klasy HttpAuthenticationFeature: Client client = ClientBuilder.newClient(); HttpAuthenticationFeature feature; feature = HttpAuthenticationFeature.basic(login, password); client.register(feature); Elementy przykładu Dla usług typu REST przygotowano trzy przykłady. Wszystkie bazują na przykładzie z książkami opartym na servletach, więc po dokładniejszy opis należy udać się do instrukcji dla zadania pierwszego. Przykłady: SimpleRest servlety odpowiedzialne za zarządzanie książkami zamieniono na jedną klasę udostępniającą usługi, Rest rozwinięcie poprzedniego przykładu o dodatkowe elementy oferowane przez technologię JAX-RS, SecuredRest uproszony przykład wykorzystujący autoryzacja i uwierzytelnianie, RestClient klient usług wykonany w technologii Java SE pozwalający na przekazanie loginu i hasła do usługi. Elementy projektu RestClient: 2014 Michał Wójcik 7
8 pl.gda.pg.eti.kask.aui.rest: entities: Book.java klasa reprezentującą książkę; client: App.java główna klasa programu, BookResource.java klasa pozwalająca na wywoływanie usług, zawiera te same metody co klasa BookResource.java w projektach webowych. Przykładowe zadania W ramach laboratorium należy skonfigurować środowisko (Apache Tomcat) oraz uruchomić na nim przykładową aplikację (jedna z trzech, wybrana przez prowadzącego). Następnie należy wprowadzić modyfikację wybraną przez prowadzącego. Modyfikacje mogą dotyczyć dodania obsługi nowej komendy do usługi (wraz odpowiednimi wywołaniami z poziomu JavaScript lub HTML), zmiany lub dodanie obiektów przechowywanych w zasięgu sesji lub aplikacji oraz zmiany istniejących funkcjonalności usług (np. przez zmianę parametrów przez nie obsługiwanych). Po oddaniu zadania należy usunąć wszystkie swoje zmiany (ręcznie zainstalowany server Apache Tomcat lub stworzony prywatny katalog instancji serwera oraz projekt) Michał Wójcik 8
Programowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz
Programowanie komponentowe Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz Struktura wykładu 1. Utworzenie użytkowników i ról na serwerze aplikacji Sun Java System Application
Bardziej szczegółowoArchitektury Usług Internetowych. Laboratorium 1 Servlety
Architektury Usług Internetowych Laboratorium 1 Servlety Wstęp Celem laboratorium jest zapoznanie się z modelem klient-serwer (żądanieodpowiedź) na przykładzie serwletów. Kontener webowy Kontener webowy
Bardziej szczegółowoWykład 3 Inżynieria oprogramowania. Przykład 1 Bezpieczeństwo(2) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz
Wykład 3 Inżynieria oprogramowania Przykład 1 Bezpieczeństwo(2) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz Struktura wykładu 1. Utworzenie użytkowników i ról na serwerze aplikacji Sun Java System
Bardziej szczegółowoAplikacje www laboratorium
Aplikacje www laboratorium Konfigurowanie zabezpieczeń w oparciu o JAAS w serwerze GlassFish Zabezpieczanie aplikacji webowych z wykorzystaniem JASS jest w podstawowych zastosowaniach procesem dwuetapowym.
Bardziej szczegółowoArchitektury 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Ćwiczenie dotyczące platformy Java EE zostało przygotowane z myślą o środowisku NetBeans w wersji 7.3 (do pobrania z
RESTful Web Services Ćwiczenie dotyczące platformy Java EE zostało przygotowane z myślą o środowisku NetBeans w wersji 7.3 (do pobrania z http://www.netbeans.org/). Celem ćwiczenia jest przygotowanie usługi
Bardziej szczegółowoAplikacje webowe z wykorzystaniem Node.js oraz Express
Aplikacje webowe z wykorzystaniem Node.js oraz Express Adresaci szkolenia: Kurs przeznaczony jest dla programistów pragnących tworzyć skalowalne aplikacje z wykorzystaniem Node.js. Parametry szkolenia:
Bardziej szczegółowoJava wybrane technologie
Java wybrane technologie spotkanie nr 14 Bezpieczeństwo Podstawowe pojęcia uwierzytelniania (authentication) autoryzacja (authorization) atrybuty bezpieczeństwa informacji integralność danych (data integrity)
Bardziej szczegółowoDokumentacja 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ółowoProgramowanie Komponentowe WebAPI
Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje
Bardziej szczegółowoPodręcznik Integracji
Podręcznik Integracji Spis treści 1. Integracja oferty... 3 1.1. Samodzielne wprowadzanie oferty sklepu... 3 1.2. Automatyczne wprowadzanie oferty z pliku XML... 3 1.3. Cyklicznie pobieranie oferty ze
Bardziej szczegółowoAplikacje 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ółowoWeb Service y w Javie
Web Service y w Javie Konrad Miziński Wydział Elektroniki i Technik Informacyjnych, Politechnika Warszawska ul. Nowowiejska 15/19, 00-665 Warszawa, Polska k.mizinski@stud.elka.pw.edu.pl Streszczenie. Niniejszy
Bardziej szczegółowoOracle9iAS: instalacja i konfiguracja aplikacji J2EE
276 Oracle9iAS: instalacja i konfiguracja aplikacji J2EE Marek Wojciechowski Marek.Wojciechowski@cs.put.poznan.pl http://www.cs.put.poznan.pl/mwojciechowski/ Plan rozdziału 277 Przypomnienie architektury
Bardziej szczegółowoProgramowanie w Internecie
mariusz@math.uwb.edu.pl http://math.uwb.edu.pl/~mariusz Uniwersytet w Białymstoku 2018/2019 Co to jest Internet? Warunki zaliczenia Zaliczenie na podstawie opracowanej samodzielnie aplikacji WWW Zastosowane
Bardziej szczegółowoSpecyfikacja techniczna. mprofi Interfejs API
Warszawa 09.04.2015. Specyfikacja techniczna mprofi Interfejs API wersja 1.0.2 1 Specyfikacja techniczna mprofi Interfejs API wersja 1.0.2 WERSJA DATA STATUTS AUTOR 1.0.0 10.03.2015 UTWORZENIE DOKUMENTU
Bardziej szczegółowoKatalog książek cz. 3: Web Service
Katalog książek cz. 3: Web Service Przygotowanie usługi sieciowej (web service) 1) Uruchom Netbeans, otwórz projekt przygotowany w ramach poprzednich zajęć. W kolejnych krokach przerobimy klasę BookManager
Bardziej szczegółowoDokumentacja 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ółowoProgramowanie w Sieci Internet filtry oraz web.xml. Kraków, 11 stycznia 2013 r. mgr Piotr Rytko Wydział Matematyki i Informatyki
Programowanie w Sieci Internet filtry oraz web.xml Kraków, 11 stycznia 2013 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Filtry, wywoływanie filtrów, wywołania łańcuchowe
Bardziej szczegółowoTworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)
Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Rodzaje zawartości Zawartość statyczna Treść statyczna (np. nagłówek, stopka) Layout, pliki multimedialne, obrazki, elementy typograficzne,
Bardziej szczegółowoPoniższy diagram prezentuje scenariusz subskrypcji aplikacji do usługi CallEventNotifications.
Poniższy diagram prezentuje scenariusz subskrypcji aplikacji do usługi CallEventNotifications. Rys. 2 Subskrypcja do usługi CallEventNotifications Opis diagramu sekwencji: 1. Aplikacja dokonuje subskrypcji
Bardziej szczegółowoArchitektury Usług Internetowych. Laboratorium 1. Servlety
Architektury Usług Internetowych Laboratorium 1. Servlety Wstęp Celem laboratorium jest zapoznanie się z modelem klient-serwer (żądanie-odpowiedź) na przykładzie serwletów. Kontener webowy Kontener webowy
Bardziej szczegółowoSpring Web MVC, Spring DI
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Laboratorium 5 Spring Web MVC, Spring DI Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 Technologie Technologie / narzędzia będące
Bardziej szczegółowoProgram szkolenia: REST i Microservices w PHP
Program szkolenia: REST i Microservices w PHP Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: REST i Microservices w PHP PHP-rest PHP developerzy 4 dni 50% wykłady / 50% warsztaty
Bardziej szczegółowoGatesms.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ółowoPodstawowe wykorzystanie Hibernate
Podstawowe wykorzystanie Hibernate Cel Wykonanie prostej aplikacji webowej przedstawiającą wykorzystanie biblioteki. Aplikacja sprawdza w zależności od wybranej metody dodaje, nową pozycje do bazy, zmienia
Bardziej szczegółowoJAX-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ółowoDokumentacja interfejsu HTTPD. Platforma BSMS.PL Instrukcja podłączenia po przez http
Dokumentacja interfejsu HTTPD Platforma BSMS.PL Instrukcja podłączenia po przez http Dokumentacja interfejsu httpd (strona 2) SPIS TREŚCI 1. Zawartość dokumentu str.3 2. Informacje ogólne 2.1 Zastosowanie
Bardziej szczegółowoNarzę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ółowoA Zasady współpracy. Ocena rozwiązań punktów punktów punktów punktów punktów
A Zasady współpracy Ocena rozwiązań 3.0 25 40 punktów 3.5 41 65 punktów 4.0 66 80 punktów 4.5 81 100 punktów 5.0 101 130 punktów Warunki zaliczenia przedmiotu Student uzyska ocenę zaliczającą (3.0) o ile
Bardziej szczegółowoProgramowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]
JAVA wprowadzenie do programowania (3/3) [1] Czym jest aplikacja Java Web Start? Aplikacje JAWS są formą pośrednią pomiędzy apletami a aplikacjami Javy. Nie wymagają do pracy przeglądarki WWW, jednak mogą
Bardziej szczegółowoKomunikacja między serwletami
Poznań Java Users Group Komunikacja między serwletami Bartosz Walter Instytut Informatyki Politechniki Poznańskiej Sceny z życia serwletów Obsługa żądań Żądanie Kontener GET / index.html HTTP/1.0 Serwlet
Bardziej szczegółowoTechnologie internetowe laboratorium nr 5. Zabezpieczanie usług sieciowych z wykorzystaniem HTTP Basic Authentication oraz HTTPS
Technologie internetowe laboratorium nr 5 Zabezpieczanie usług sieciowych z wykorzystaniem HTTP Basic Authentication oraz HTTPS 1. Wprowadzenie Pawe ł Czarnul, KASK, WETI, Politechnika Gdańska pczarnul@eti.pg.gda.pl
Bardziej szczegółowoEPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails
EPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails Plan prezentacji Framework Rails Ruby on Rails podstawowe założenia DRY: nie powtarzaj się Ruby on Rails podstawowe założenia DRY: nie powtarzaj
Bardziej szczegółowoDokumentacja Techniczna. Dokumentacja techniczna usługi płatności mobilnych
Dokumentacja Techniczna 1.3, beta Direct Billing Dokumentacja techniczna usługi płatności mobilnych CashBill Spółka Akcyjna ul. Rejtana 20, 41-300 Dąbrowa Górnicza Tel.: +48 032 764-18-42 Fax: +48 032
Bardziej szczegółowoPHP: bazy danych, SQL, AJAX i JSON
1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji
Bardziej szczegółowoZastosowanie komponentów EJB typu Session
Zastosowanie komponentów EJB typu Session na podstawie https://docs.oracle.com/javaee/7/jeett.pdf Programowanie komponentowe Lab1 1 1. Refaktoryzacja kodu programu Sklep_6 z lab5, TINT 1.1. Należy wykonać
Bardziej szczegółowoJAVA NA SERWERZE SPRING. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska
JAVA NA SERWERZE SPRING Waldemar Korłub Platformy Technologiczne KASK ETI Politechnika Gdańska Java na serwerze 2 https://zeroturnaround.com/rebellabs/most-popular-java-frameworks-tools-and-libraries-2016/
Bardziej szczegółowoMateriał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ółowoWarstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.
Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy
Bardziej szczegółowoJava Server Faces - wprowadzenie
Java Server Faces - wprowadzenie Java Server Faces (JSF) jest najpopularniejszą technologią opartą o język JAVA, służącą do tworzenia aplikacji webowych (dynamicznych stron WWW). pomimo że JSF i EJB wchodzą
Bardziej szczegółowoTechnologie internetowe
Protokół HTTP Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Spis treści Protokół HTTP Adresy zasobów Jak korzystać z telnet? Metody protokołu HTTP Kody odpowiedzi Pola nagłówka HTTP - 2 - Adresy
Bardziej szczegółowoAplikacje internetowe - laboratorium
Aplikacje internetowe - laboratorium PHP Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej opartej o język PHP. Aplikacja ilustruje takie mechanizmy jak: obsługa formularzy oraz obsługa
Bardziej szczegółowoOgólnopolskie Repozytorium Prac Dyplomowych
Ogólnopolskie Repozytorium Prac Dyplomowych System Informacji o Szkolnictwie Wyższym POL-on Źródła danych i sposób zasilania, formaty i aspekty organizacyjne Strona 1 z 8 Spis treści Spis treści 1.Źródła
Bardziej szczegółowoRESTful Web Services na platformie Java EE (JAX-RS)
RESTful Web Services na platformie Java EE (JAX-RS) Ćwiczenie dotyczące zostało przygotowane z myślą o środowisku NetBeans w wersji 8.x (do pobrania z http://www.netbeans.org/). Ćwiczenie 1 Celem ćwiczenia
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2017 Globalna sieć Internet Koncepcja sieci globalnej Usługi w sieci Internet
Bardziej szczegółowoZPKSoft 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ółowoprepared by: Programowanie WWW Servlety
Programowanie WWW Servlety Przypomnienie problemu Aplikacja do liczenia kredytów Klasa Kredyt Formatka do wprowadzania danych (czysty HTML) Skrypt liczący ratę (JSP wykorzystujące klasę Kredyt) Klasa Kredyt
Bardziej szczegółowoKatalog książek cz. 2
Katalog książek cz. 2 Odczytywanie danych z XML Do ćwiczenia dołączony jest plik books.xml zawierający pełen katalog książek. Poniższy listing zawiera przykładowy fragment danych w stosowanym formacie.
Bardziej szczegółowoProjektowanie oprogramowania. Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz
Projektowanie oprogramowania Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz 1 Wykonanie czterowarstwowej aplikacji EE z dostępem do bazy danych,
Bardziej szczegółowoInternetowe bazy danych
Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 6 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Kontrola dostępu
Bardziej szczegółowoKurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE
Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE Cena szkolenia Cena szkolenia wynosi 100 zł za 60 min. Ilość godzin szkolenia jest zależna od postępów w nauce uczestnika kursu oraz ilości czasu, którą będzie
Bardziej szczegółowoSerwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.
Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.pl Serwer aplikacji Serwer aplikacji to: Serwer wchodzący w skład sieci komputerowej, przeznaczony
Bardziej szczegółowoPaweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie WCF Data Services Obsługa żądania OData Podstawy języka OData Narzędzia i biblioteki Gdzie można skorzystać z OData OData w Web API
Bardziej szczegółowoSzczegółowy opis zamówienia:
Szczegółowy opis zamówienia: Rok 2016 budowa stron w html5 (8h v + 4h ćw) 8 szt. html5 - zaawans. (7h v + 5h ćw) 8 szt. programowania w java script (9h v + 7h ćw) 8 szt. java script zaawans (8h v + 4h
Bardziej szczegółowoEnterprise JavaBeans (EJB)
Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z sesyjnymi komponentami Enterprise JavaBeans. Zilustrowane będą różnice między komponentami stanowymi i bezstanowymi. Pokazane będzie
Bardziej szczegółowoArchitektura aplikacji
Architektura aplikacji System powiadomień Kamil Szarek, 21 listopada 2013 Plan prezentacji 1. 2. 3. 4. 5. Internet i aplikacje mobilne Jak działa typowe API, architektura pull Architektura push, PubSubHubbub
Bardziej szczegółowoPrzykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie
Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Przykłady na podstawie zadań lab. z przedmiotu Technologie internetowe
Bardziej szczegółowoSpecyfikacja HTTP API. Wersja 1.6
Specyfikacja HTTP API Wersja 1.6 1. Wprowadzenie Platforma PlaySMS umożliwia masową rozsyłkę SMS-ów oraz MMS-ów marketingowych. Umożliwiamy integrację naszej platformy z dowolnym systemem komputerowym
Bardziej szczegółowoPHP: bloki kodu, tablice, obiekty i formularze
1 PHP: bloki kodu, tablice, obiekty i formularze SYSTEMY SIECIOWE Michał Simiński 2 Bloki kodu Blok if-else Switch Pętle Funkcje Blok if-else 3 W PHP blok if i blok if-else wyglądają tak samo i funkcjonują
Bardziej szczegółowoAktualizacja SMSFall v. 1.1.5 Data publikacji: 20-05-2013
Aktualizacja SMSFall v. 1.1.5 Data publikacji: 20-05-2013 Wersja Standard i Plus: we właściwościach terminala dodano wskaźnik poziomu sygnału urządzenia GSM wyrażony w dbm. Podstawa teoretyczna: http://pl.wikipedia.org/wiki/dbm.
Bardziej szczegółowoPiotr Laskowski Krzysztof Stefański. Java Servlets
Piotr Laskowski Krzysztof Stefański Java Servlets Java Servlets Technologia dynamicznego generowania treści dla aplikacji WWW Wyspecyfikowana przez Sun, obecnie przez Java Community Process Pierwsza formalna
Bardziej szczegółowoGerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań, 04.03.2010
Bezpieczeństwo interoperacyjnego hostingu Gerard Frankowski, Zespół Bezpieczeństwa PCSS 4. Konferencja MIC Nowoczesne technologie bliżej nas Poznań, 04.03.2010 1 Agenda Wprowadzenie Zespół Bezpieczeństwa
Bardziej szczegółowoPolityka prywatności dla strony ELCEN Sp. z o.o. z siedzibą w Gdyni
Polityka prywatności dla strony http://elcen.eu ELCEN Sp. z o.o. z siedzibą w Gdyni ELCEN Sp. z o.o. z siedzibą w Gdyni przestrzega przepisów w zakresie ochrony danych osobowych klientów, kontrahentów
Bardziej szczegółowoTworzenie 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ółowoTypy 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ółowoJava wybrane technologie spotkanie nr 4. Serwlety c.d.
Java wybrane technologie spotkanie nr 4 Serwlety c.d. 1 Wprowadzenie Narzucona struktura katalogów aplikacji (większa przenośności) webapps -app1 -app2 -app3 (root) -*.html, *.gif, *.js, *.css (być może
Bardziej szczegółowoŚwiadczenie usługi hurtowej wysyłki wiadomości SMS dla Urzędu Miasta Torunia w latach
OPIS WYMGŃ FUNKCJONLNO-TECHNICZNYCH dla zamówienia: Świadczenie usługi hurtowej wysyłki wiadomości SMS dla Urzędu Miasta Torunia w latach 2015-2016 Przedmiot zamówienia Przedmiotem zamówienia jest usługa
Bardziej szczegółowoTestowanie aplikacji Java Servlets
Borland Developer Days 2004 2-3 czerwca 2004 Testowanie aplikacji Java Servlets Bartosz Walter mailto: Bartek.Walter@man.poznan.pl Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe?
Bardziej szczegółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium PHP. Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię PHP. Aplikacja pokazuje takie aspekty, obsługa formularzy oraz zmiennych
Bardziej szczegółowoAplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin
Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin Czym jest Spring Boot? Spring Boot jest szkieletem aplikacji, opiera się o Spring Framework czyli Framework szeroko
Bardziej szczegółowoSpring, Maven, Postman, Debugger
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Laboratorium 4 Spring, Maven, Postman, Debugger Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 Technologie Technologie / narzędzia
Bardziej szczegółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium Serwlety Celem ćwiczenia jest przygotowanie kilku prostych serwletów ilustrujących możliwości tej technologii. Poszczególne ćwiczenia prezentują sposób przygotowania środowiska,
Bardziej szczegółowoSpecyfikacja implementacyjna aplikacji serwerowej
Projekt: System wspomagania osób studiujących Strona: 1 / 7 Opracowali: Zatwierdzili: Spis treści Damian Głuchowski Krzysztof Krajewski Krzysztof Krajewski dr inż. Sławomir Skoneczny Spis treści... 1 1.
Bardziej szczegółowoWykład 4. Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz
Wykład 4 Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz Struktura wykładu 1. Protokół SSL do zabezpieczenia aplikacji na poziomie protokołu transportowego
Bardziej szczegółowoInformatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java
Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny
Bardziej szczegółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium PHP + bazy danych Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię PHP. Aplikacja pokazuje takie aspekty, współpraca PHP z bazami
Bardziej szczegółowoPlatformy Technologiczne
i Platformy Technologiczne Laboratorium nr 4 Java: REST API Aplikacja opracowana w ramach laboratorium nr 4 będzie potrzebna do realizacji laboratorium nr 5 należy zachować przygotowany projekt. Zadanie
Bardziej szczegółowoElementy JEE. 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages.
Elementy JEE 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages. 1 Java Enterprice Edition Java Enterprice Edition (JEE) jest rozszerzeniem Java Standard
Bardziej szczegółowoCzym jest AJAX. AJAX wprowadzenie. Obiekt XMLHttpRequest (XHR) Niezbędne narzędzia. Standardowy XHR. XHR z obsługą baz danych
Czym jest AJAX AJAX wprowadzenie Beata Pańczyk na podstawie: 1. Lis Marcin, Ajax, Helion, 2007 2. Hadlock Kris, Ajax dla twórców aplikacji internetowych, Helion, 2007 AJAX (Asynchronous JavaScript and
Bardziej szczegółowoDirectBilling dokumentacja techniczna
CashBill S.A. DirectBilling: dokumentacja techniczna 1/11 DirectBilling dokumentacja techniczna status: BETA, v1.2 CashBill S.A. DirectBilling: dokumentacja techniczna 2/11 Historia zmian autor data zmiany
Bardziej szczegółowoBiocentrum Ochota infrastruktura informatyczna dla rozwoju strategicznych kierunków biologii i medycyny POIG 02.03.00-00-003/09
Biocentrum Ochota infrastruktura informatyczna dla rozwoju strategicznych kierunków biologii i medycyny POIG 02.03.00-00-003/09 Zadanie 6. Zastosowanie technologii informatycznych w medycynie Sprawozdanie
Bardziej szczegółowoContexts and Dependency Injection (CDI) Autor wykładu: Marek Wojciechowski
Contexts and Dependency Injection (CDI) Autor wykładu: Marek Wojciechowski ASP.NET (2) Contexts and Dependency Injection (CDI) Specyfikacja składowa Java EE 6 dotycząca współpracy warstwy prezentacji z
Bardziej szczegółowoJarosł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ółowoOpenLaszlo. 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ółowoZaawansowane aplikacje internetowe
Zaawansowane aplikacje internetowe AJAX 1 Celem tego laboratorium jest pokazanie moŝliwości technologii AJAX. W ramach ćwiczeń zostanie zbudowana prosta aplikacja, przechwytująca kliknięcia uŝytkownika
Bardziej szczegółowoSystemy internetowe. Wykład 5 Architektura WWW. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science
Systemy internetowe Wykład 5 Architektura WWW Architektura WWW Serwer to program, który: Obsługuje repozytorium dokumentów Udostępnia dokumenty klientom Komunikacja: protokół HTTP Warstwa klienta HTTP
Bardziej szczegółowoAPI System Partnerski
API System Partnerski API zostało zrealizowane według wzorca REST. Komunikacja odbywa się poprzez wysłanie żądania HTTP pod adres https://apiv2.systempartnerski.pl/partner-api/ wraz z odpowiednimi parametrami.
Bardziej szczegółowoAPI STRESZCZENIE DOKUMENTACJI TECHNICZNEJ. Strona 1 z 8
API STRESZCZENIE DOKUMENTACJI Strona 1 z 8 API SPIS TREŚCI 1 API podstawowe informacje... 3 2 Rejestracja TPP... 4 3 Opis metod... 6 4 Opis procesu uwierzytelniania PSU... 7 5 Dodatkowe informacje na temat
Bardziej szczegółowoWprowadzenie do Doctrine ORM
Wprowadzenie do Doctrine ORM Przygotowanie środowiska Do wykonania ćwiczenia konieczne będzie zainstalowanie narzędzia Composer i odpowiednie skonfigurowanie Netbeans (Tools->Options->Framework & Tools->Composer,
Bardziej szczegółowoProtokół 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ółowoProgramowanie. Dodatek - uzupełnienie wiadomości. mgr inż. Krzysztof Szwarc. Sosnowiec,
Programowanie Dodatek - uzupełnienie wiadomości mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 2017 1 / 45 mgr inż. Krzysztof Szwarc Programowanie Informacje ogólne 2 / 45 mgr inż. Krzysztof
Bardziej szczegółowoPodstawy programowania w języku JavaScript
Podstawy programowania w języku JavaScript Część piąta AJAX Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.siminskionline.pl Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych
Bardziej szczegółowoSzczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.
Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania. Założenia projektowe systemu NETDOC. część 1: założenia ogólne i funkcjonalność rdzenia systemu Założenia ogólne Celem projektu jest
Bardziej szczegółowoDokumentacja Techniczna 1.2. Webtoken MT. Uruchomienie subskrybcji MT poprzez serwis WWW
Dokumentacja Techniczna 1.2 Webtoken MT Uruchomienie subskrybcji MT poprzez serwis WWW CashBill Spółka Akcyjna ul. Rejtana 20, 41-300 Dąbrowa Górnicza Tel.: +48 032 764-18-42 Fax: +48 032 764-18-40 Infolinia:
Bardziej szczegółowoKomunikacja międzysystemowa
Komunikacja międzysystemowa REST API 06.12.2017 Karol Buler O czym będzie? O komunikacji ogólnie Application programming interface (API) Wybrane metody komunikacji REST API JavaScript Object Notation (JSON)
Bardziej szczegółowoTworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)
Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Hypertext Xanadu Project (Ted Nelson) propozycja prezentacji dokumentów pozwalającej czytelnikowi dokonywać wyboru Otwarte, płynne oraz ewoluujące
Bardziej szczegółowo