Testowanie aplikacji Java Servlets

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

Download "Testowanie aplikacji Java Servlets"

Transkrypt

1 Borland Developer Days czerwca 2004 Testowanie aplikacji Java Servlets Bartosz Walter mailto:

2 Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe? W małej skali, czyli testy jednostkowe Całymi funkcjami, czyli testy funkcjonalne Jednak API, czyli obiekty zastępcze Czy można mieć wszystko, czyli Cactus Testowanie aplikacji Java Servlets (c) Bartosz Walter 2

3 Serwlet i jego środowisko Żądanie Kontener GET /index.html HTTP/1.0 Serwlet <HTML> <HEAD> <BODY>... Odpowiedź Testowanie aplikacji Java Servlets (c) Bartosz Walter 3

4 Życie serwleta void init(servletconfig) Serwlet void doget(servletrequest, ServletResponse) void dopost(servletrequest, ServletResponse) void destroy() javax.servlet.http.httpservlet Testowanie aplikacji Java Servlets (c) Bartosz Walter 4

5 Serwlet podatkowy dochód: 100 podatek: 0 19% 30% dochód : 1000 podatek: 89,28 40% dochód : -100 podatek: 0 dochód : xxx Niepoprawna liczba Przeglądarka GET /index.html HTTP/ HTTP/1.0 OK Aplikacja Testowanie aplikacji Java Servlets (c) Bartosz Walter 5

6 Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe? W małej skali, czyli testy jednostkowe Całymi funkcjami, czyli testy funkcjonalne Jednak API, czyli obiekty zastępcze Czy można mieć wszystko, czyli Cactus Testowanie aplikacji Java Servlets (c) Bartosz Walter 6

7 Testowanie aplikacji internetowych Co jest obiektem testowania? Pojedyncze obiekty aplikacji if (request.getparameter("income")... Testowanie aplikacji Java Servlets (c) Bartosz Walter 7

8 Testowanie aplikacji internetowych Co jest obiektem testowania? Pojedyncze obiekty aplikacji Aplikacja jako całość <P>Podatek: 89,28</P> HTTP Testowanie aplikacji Java Servlets (c) Bartosz Walter 8

9 Przypadek testowy xunit void setup() TestCase void testxxxx() void testxxxx() void testxxxx() void testxxxx() void teardown() junit.framework.testcase Testowanie aplikacji Java Servlets (c) Bartosz Walter 9

10 Klasa i jej przypadek testowy Utworzenie instancji klasy Student Student.java + getname() + getage() + computelevel() StudentTest.java Student student + setup() + testgetname() + testgetage() + testcomputelevel() + teardown() Usunięcie instancji klasy Student Testowanie aplikacji Java Servlets (c) Bartosz Walter 10

11 Testowanie jednostkowe metody Student student = null; void setup() public void setup() { student = new Student(); student.setage(20); student.setname( Janek ); } void testgetage() void teardown() public void testwiek() throws Exception { int age = student.getage(); } assertequals(age, 20); public void teardown() { student = null; } Testowanie aplikacji Java Servlets (c) Bartosz Walter 11

12 Testowanie jednostkowe aplikacji internetowych void testdoget() testdoget(request, response){...???... } testdopost(request, response){ void testdopost() }...???... testcomputetax(int income) { void testcomputetax() } int tax = computetax(100); assertequals(0, tax); Testowanie aplikacji Java Servlets (c) Bartosz Walter 12

13 Testowanie jednostkowe aplikacji internetowych void testdoget() brak żądania i odpowiedzi void testdopost() brak żądania i odpowiedzi testcomputetax(int income) { void testcomputetax() } int tax = computetax(100); assertequals(0, tax); Testowanie aplikacji Java Servlets (c) Bartosz Walter 13

14 Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe? W małej skali, czyli testy jednostkowe Całymi funkcjami, czyli testy funkcjonalne Jednak API, czyli obiekty zastępcze Czy można mieć wszystko, czyli Cactus Testowanie aplikacji Java Servlets (c) Bartosz Walter 14

15 Perspektywa użytkownika: testowanie funkcjonalne PHP perl ASP GET /index.html HTTP/1.0 Przeglądarka 200 HTTP/1.0 OK Serwer Java Servlets Przeglądarka ma dostęp jedynie do protokołu HTTP Testowanie aplikacji Java Servlets (c) Bartosz Walter 15

16 Perspektywa użytkownika: testowanie funkcjonalne HttpUnit PHP perl ASP GET /index.html HTTP/1.0 Serwer 200 HTTP/1.0 OK Zamiast testera z przeglądarką użyjmy automatu... Java Servlets Testowanie aplikacji Java Servlets (c) Bartosz Walter 16

17 Architektura HttpUnit i jwebunit Żądanie TestCase Odpowiedź Klient HTTP Parser HTML HTML Web Server Testowanie aplikacji Java Servlets (c) Bartosz Walter 17

18 Przypadek testowy jwebunit Klient Wskazanie adresu aplikacji StudentTest.java + setup() + testxxx() + teardown() gettestcontext().setbaseurl(baseurl) beginat(specificurl); Testowanie aplikacji Java Servlets (c) Bartosz Walter 18

19 Przypadek testowy jwebunit Klient Nawigacja i asercje StudentTest.java + setup() + testxxx() + teardown() clicklinkwithtext("formularz"); setformelement("id", "12345"); click(); asserttextpresent("wiek: 20 lat"); assertlinkwithtextpresent("powrót"); Testowanie aplikacji Java Servlets (c) Bartosz Walter 19

20 Nawigacja: Tabele WebTable[] gettables() table.getcellastext(row, col) HTML ala 34 table.getrowcount() table.getcolumncount() Testowanie aplikacji Java Servlets (c) Bartosz Walter 20

21 Nawigacja: Linki WebLink getlinkwithtext () link.click() HTML Do formularza link.mouseover() Testowanie aplikacji Java Servlets (c) Bartosz Walter 21

22 Nawigacja: Formularze WebForms[] getforms() form.getmethod() HTML Imię: Wyślij form.submit() form.getaction() Testowanie aplikacji Java Servlets (c) Bartosz Walter 22

23 Asercje jwebunit FORMULARZE OGÓLNE assertframepresent (ID) assertwindowpresent (ID) assertformpresent (ID) asserttitleequals(oczekiwany) assertformelementpresent (ID) asserttextpresent(tekst) assertformelementpresentwithlabel(etykieta) TABELE assertlinkpresent(id) assertformelementequals(oczekiwany, asserttablepresent faktyczny) (ID) assertlinkpresentwithtext(id) assertcheckboxselected(id) asserttableequals(id, tabela[][]) assertlinkpresentwithimage(id) assertbuttonpresent(id) asserttextintable (ID, tekst) assertradiooptionpresent(id) asserttablerowsequal(id, wierszpoczątkowy, oczekiwana) assertoptionsequal(nazwa, wzorce[]) Testowanie aplikacji Java Servlets (c) Bartosz Walter 23

24 Przykład: serwlet podatkowy Testowanie aplikacji Java Servlets (c) Bartosz Walter 24

25 Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe? W małej skali, czyli testy jednostkowe Całymi funkcjami, czyli testy funkcjonalne Jednak API, czyli obiekty zastępcze Czy można mieć wszystko, czyli Cactus Testowanie aplikacji Java Servlets (c) Bartosz Walter 25

26 Architektura testów z wykorzystaniem Mock Objects Żądanie HTTP Client HTML HttpUnit Serwlet Odpowiedź Testowanie aplikacji Java Servlets (c) Bartosz Walter 26

27 Architektura testów z wykorzystaniem Mock Objects Żądanie HTTP Client HTML HttpUnit Serwlet Odpowiedź Testowanie aplikacji Java Servlets (c) Bartosz Walter 27

28 Obiekty zastępcze Obiekt zastępczy (mock object) naśladuje obiekt, który zastępuje posiada minimalną funkcjonalność obserwuje w jaki sposób inne obiekty wywołują jego metody porównuje faktyczne zachowanie z oczekiwanym source: Testowanie aplikacji Java Servlets (c) Bartosz Walter 28

29 Wykorzystanie obiektu zastępczego 1. Utwórz instancje obiektów zastępczych 2. Ustaw wartości parametrów tych obiektów 3. Zdefiniuj oczekiwane zachowanie obiektów na nich operujących 4. Wywołaj testowany kod przekazując obiekty zastępcze jako parametry 5. Zweryfikuj spójność obiektów zastępczych Testowanie aplikacji Java Servlets (c) Bartosz Walter 29

30 Obiekty zastępcze: inicjalizacja MockHttpServletRequest mockrequest = null; MockHttpServletResponse mockresponse = null; MockServletConfig mockconfig = null; MyServlet servlet = null; public void setup() { mockrequest = new MockHttpServletRequest(); mockresponse = new MockHttpServletResponse(); mockconfig = new MockServletConfig(); servlet = new MyServlet(); } Testowanie aplikacji Java Servlets (c) Bartosz Walter 30

31 Obiekty zastępcze: test public void testxxx() { mockrequest.setupaddparameter("imie", "Ala"); mockrequest.setupaddparameter("wiek", "34"); mockrequest.setexpectedattribute("loggedin", "true"); mockresponse.setexpectedoutput( "<html><head/><body>a GET request</body></html>"); servlet.init(mockconfig); servlet.doget(mockrequest, mockresponse); } assertequals("atrybut nie został ustawiony", "true", mockrequest.getattribute("loggedin")); mockrequest.verify(); mockresponse.verify(); Testowanie aplikacji Java Servlets (c) Bartosz Walter 31

32 Weryfikacja wyników Asercje sprawdzają, czy testowane obiekty dają spodziewane wyniki Weryfikacje sprawdzają, czy testowane obiekty poprawnie porozumiewają się z obiektami zastępczymi liczba wywołań metod obecność parametru, atrybutu, sesji etc. Testowanie aplikacji Java Servlets (c) Bartosz Walter 32

33 Obiekty zastępcze: test public void testxxx() { mockrequest.setupaddparameter("imie", "Ala"); mockrequest.setupaddparameter("wiek", "34"); mockrequest.setexpectedattribute("loggedin", "true"); mockresponse.setexpectedoutput( "<html><head/><body>a GET request</body></html>"); servlet.init(mockconfig); servlet.doget(mockrequest, mockresponse); } assertequals("atrybut nie został ustawiony", "true", mockrequest.getattribute("loggedin")); mockrequest.verify(); mockresponse.verify(); Testowanie aplikacji Java Servlets (c) Bartosz Walter 33

34 Przykład: serwlet podatkowy Testowanie aplikacji Java Servlets (c) Bartosz Walter 34

35 Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe? W małej skali, czyli testy jednostkowe Całymi funkcjami, czyli testy funkcjonalne Jednak API, czyli obiekty zastępcze Czy można mieć wszystko, czyli Cactus Testowanie aplikacji Java Servlets (c) Bartosz Walter 35

36 Architektura testów Cactusa Klient TestXXX Żądanie Odpowiedź Klient HTTP Parser HTML GET /index.html HTTP/ HTTP/1.0 OK Testowanie aplikacji Java Servlets (c) Bartosz Walter 36

37 Architektura testów Cactusa Serwer Żądanie TestXXX GET /index.html HTTP/ HTTP/1.0 OK Proxy Serwlet Odpowiedź Testowanie aplikacji Java Servlets (c) Bartosz Walter 37

38 Przypadek testowy Cactusa Klient YYYTest.java + beginxxx() + setup() + testxxx() + teardown() + endxxx() Serwer YYYTest.java + beginxxx() + setup() + testxxx() + teardown() + endxxx() Testowanie aplikacji Java Servlets (c) Bartosz Walter 38

39 Przypadek testowy Cactusa Klient konfiguracja połączenia HTTP definicje parametrów, nagłówków, cookies, sesji YYYTest.java + beginxxx() + setup() + testxxx() + teardown() + endxxx() obsługa autentykacji HTTP void beginxxx(webrequest request) { request.addparameter("income", "100"); request.addheader("naglowek", "brak"); request.addcookie("id", 1234); } Testowanie aplikacji Java Servlets (c) Bartosz Walter 39

40 Przypadek testowy Cactusa inicjacja środowiska testowego Serwer utworzenie obiektów wymaganych przez test dostęp do wybranych obiektów: request, response, config, session ServletContext context = null; void setup() { } context = config.getservletcontext() session.setattribute("loggedin", "true"); YYYTest.java + beginxxx() + setup() + testxxx() + teardown() + endxxx() Testowanie aplikacji Java Servlets (c) Bartosz Walter 40

41 Przypadek testowy Cactusa utworzenie testowanego obiektu wykonanie metody testowanego obiektu Serwer weryfikacja wyników dostęp do wybranych obiektów: request, response, config, session void testxxx() { } MojSerwlet srv = new MojServlet(); srv.dopost(request, response); assertequals("true", session. getattribute("loggedin")); YYYTest.java + beginxxx() + setup() + testxxx() + teardown() + endxxx() Testowanie aplikacji Java Servlets (c) Bartosz Walter 41

42 Przypadek testowy Cactusa Serwer usunięcie środowiska testowego dostęp do wybranych obiektów: request, response, config, session ServletContext context = null; void teardown() { } session.removeattribute("loggedin"); context = null; YYYTest.java + beginxxx() + setup() + testxxx() + teardown() + endxxx() Testowanie aplikacji Java Servlets (c) Bartosz Walter 42

43 Przypadek testowy Cactusa Klient org.apache.cactus.webresponse com.meterware.httpunit.webresponse weryfikacja wyników po stronie klienta YYYTest.java + beginxxx() + setup() + testxxx() + teardown() + endxxx() zakończenie transakcji void endxxx(webresponse response) { } assertequals("brak", response. getconnection().getheaderfield( "naglowek")); assertequals("1234", response.getcookie ("id")); Testowanie aplikacji Java Servlets (c) Bartosz Walter 43

44 Przykład: serwlet podatkowy Testowanie aplikacji Java Servlets (c) Bartosz Walter 44

45 Porównanie metod testowania Testy funkcjonalne niezależne od technologii wykonania aplikacji powolne w wykonaniu gruboziarniste Testy z wykorzystaniem obiektów zastępczych bardzo szybkie w wykonaniu, uciążliwe w implementacji drobnoziarniste Testy hybrydowe powolne w wykonaniu ziarnistość zależy od implementacji kompletne Testowanie aplikacji Java Servlets (c) Bartosz Walter 45

46 Podsumowanie Aplikacje internetowe można testować na różne sposoby Testy uzupełniają się, a nie wykluczają Różne testy różny nakład pracy Testowanie aplikacji Java Servlets (c) Bartosz Walter 46

47 Readings 1. JUnit, 2. JWebUnit, 3. HttpUnit, 4. Endo-Testing. Unit Testing with Mock Objects, MocksObjectsPaper?action=AttachFile&do=get &target=mockobjects.pdf 5. MockObjects, 6. Jakarta-Cactus, Testowanie aplikacji Java Servlets (c) Bartosz Walter 47

48 Q & A Testowanie aplikacji Java Servlets (c) Bartosz Walter 48

Komunikacja między serwletami

Komunikacja 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ółowo

Wybrane działy Informatyki Stosowanej

Wybrane działy Informatyki Stosowanej Wybrane działy Informatyki Stosowanej JSP - Java Server Pages dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2019 Aplikacje i skrypty WWW klasyfikacja

Bardziej szczegółowo

Programowanie poprzez testy z wykorzystaniem JUnit

Programowanie poprzez testy z wykorzystaniem JUnit Programowanie poprzez testy z wykorzystaniem JUnit Programowanie ekstremalne (XP) XP zaproponowano w 1999 (K. Beck: Extreme Programming Explained ) XP dedykowane jest do projektów: O małym lub średnim

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

Wprowadzenie do J2EE. Maciej Zakrzewicz. Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/

Wprowadzenie do J2EE. Maciej Zakrzewicz. Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ 1 Wprowadzenie do J2EE Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji

Bardziej szczegółowo

Java wybrane technologie spotkanie nr 4. Serwlety c.d.

Java 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

Automatyzacja Testowania w WEB 2.0

Automatyzacja Testowania w WEB 2.0 Automatyzacja Testowania w WEB 2.0 Wojciech Pająk, Radosław Smilgin XXIV Jesienne Spotkania PTI Wisła, 20-24 października 2008 Agenda Wprowadzenie do automatyzacji testowania Technologie WEB 2.0 Narzędzia

Bardziej szczegółowo

Architektury Usług Internetowych. Laboratorium 1 Servlety

Architektury 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ółowo

Piotr Laskowski Krzysztof Stefański. Java Servlets

Piotr 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ółowo

CGI i serwlety. Plan wykładu. Wykład prowadzi Mikołaj Morzy. Przykład: serwlety vs. szablony. Implementacja logiki prezentacji

CGI i serwlety. Plan wykładu. Wykład prowadzi Mikołaj Morzy. Przykład: serwlety vs. szablony. Implementacja logiki prezentacji Wykład prowadzi Mikołaj Morzy CGI i serwlety Plan wykładu Metody konstrukcji logiki prezentacji Programy CGI Serwlety Java implementacja korzystanie z nagłówków obsługa zmiennych Cookies obsługa sesji

Bardziej szczegółowo

Testowanie. Ryszard Beczek & Piotr Miłkowski 1 04/11/07

Testowanie. Ryszard Beczek & Piotr Miłkowski 1 04/11/07 Testowanie Ryszard Beczek & Piotr Miłkowski 1 O czym to będzie? Trzy słowa o testowaniu TDD JUnit TestNG JMeter Yawet Squish/Java 2 Jak testujemy? Zwykle aplikacje testujemy ręcznie Testy przeprowadzamy

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

Wybrane działy Informatyki Stosowanej

Wybrane 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ółowo

Testowanie aplikacji. Kurs języka Ruby

Testowanie aplikacji. Kurs języka Ruby Testowanie aplikacji Kurs języka Ruby Rodzaje testów Testy jednostkowe Testy funkcjonalne Testy integracyjne Testy jednostkowe (unit tests) Testy sprawdzające pojedyncze funkcjonalności (metodę, funkcję

Bardziej szczegółowo

Badania poziomu bezpieczeństwa portalu dostępowego do infrastruktury projektu PL-Grid

Badania poziomu bezpieczeństwa portalu dostępowego do infrastruktury projektu PL-Grid Badania poziomu bezpieczeństwa portalu dostępowego do infrastruktury projektu PL-Grid Tomasz Kuczyński Dział Aplikacji Tomasz Nowak Zespół Bezpieczeństwa Wrocław, 2.12.2010 r. Konferencja i3: internet

Bardziej szczegółowo

Programowanie w Ruby

Programowanie w Ruby Programowanie w Ruby Wykład 13 Marcin Młotkowski 16 stycznia 2013 Plan wykładu Testowanie aplikacji w Ruby on Rails Testowanie modeli Testy funkcjonalne: testowanie kontrolerów Testy integracyjne Testowanie

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje 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ółowo

Testowanie jednostkowe. Jacek Starzyński, ZETiIS PW

Testowanie jednostkowe. Jacek Starzyński, ZETiIS PW Testowanie jednostkowe Jacek Starzyński, ZETiIS PW Testowanie Po co testować? Co testować? Kiedy testować? Jak testować? Narzędzia Po co testować? Testy nie udowadniają poprawności......ale pozwalają wykryć

Bardziej szczegółowo

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

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008 Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF

Bardziej szczegółowo

prepared by: Programowanie WWW Servlety

prepared 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ółowo

Serwlety. Co to jest serwlet? Przykładowy kod serwletu. Po co są serwlety?

Serwlety. Co to jest serwlet? Przykładowy kod serwletu. Po co są serwlety? Serwlety Co to jest serwlet? kawałek kodu w Javie po stronie serwera HTTP rozszerza moŝliwośći serwera CGI, w Javie, wzbogacone o biblioteki ułatwiające Ŝycie programiście (np. utrzymywanie sesji, wpólne

Bardziej szczegółowo

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia) Program szkolenia: Przygotowanie do nowoczesnego programowania po stronie przeglądarki (HTML5, CSS3, JS, wzorce, architektura, narzędzia) Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania:

Bardziej szczegółowo

Programowanie komponentowe 5

Programowanie komponentowe 5 Budowa warstwy klienta w architekturze typu klient-serwer zbudowanych z komponentów typu EE - klient desktopowy i internetowy. Zastosowanie komponentów opartych na technologii EJB 3.2. na podstawie https://docs.oracle.com/javaee/7/jeett.pdf

Bardziej szczegółowo

Aplikacje internetowe i rozproszone - laboratorium

Aplikacje internetowe i rozproszone - laboratorium Aplikacje internetowe i rozproszone - laboratorium Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z technologią EJB w wersji 3.0, a w szczególności: implementacja komponentów sesyjnych,

Bardziej szczegółowo

5.14 JSP - Przykład z obiektami sesji... 83 5.15 Podsumowanie... 84 5.16 Słownik... 85 5.17 Zadanie... 86

5.14 JSP - Przykład z obiektami sesji... 83 5.15 Podsumowanie... 84 5.16 Słownik... 85 5.17 Zadanie... 86 Spis treści 1 Wprowadzenie - architektura, protokoły, system WWW... 1 1.1 Wstęp.................................................. 1 1.2 Ważniejsze daty......................................... 2 1.3 Protokoły

Bardziej szczegółowo

Programowanie 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 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ółowo

Automatyzacja testów aplikacji webowych w Selenium podstawy. Natalia Krawczyk

Automatyzacja testów aplikacji webowych w Selenium podstawy. Natalia Krawczyk Automatyzacja testów aplikacji webowych w Selenium podstawy Natalia Krawczyk Automatyzacja testów UI...... czyli symulacja operacji wykonywanych przez użytkownika na interfejsie aplikacji webowej Kiedy

Bardziej szczegółowo

Remote Method Invocation 17 listopada 2010

Remote Method Invocation 17 listopada 2010 Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja klienckak interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Wykład dla studentów Informatyki Stosowanej UJ 2012/2013

Wykład dla studentów Informatyki Stosowanej UJ 2012/2013 e-biznes Wykład dla studentów Informatyki Stosowanej UJ 2012/2013 Michał Cieśla pok. 440a, email: michal.ciesla@uj.edu.pl konsultacje: środy 10-12 http://users.uj.edu.pl/~ciesla/ 1 Literatura B. Burke,

Bardziej szczegółowo

Wzorce prezentacji internetowych

Wzorce prezentacji internetowych Wzorce prezentacji internetowych 1. Model kontrolera widoku (Model View Controller). 2. Kontroler strony (Page Controller). 3. Kontroler fasady (Front Controller). 4. Szablon widoku (Template View). 5.

Bardziej szczegółowo

LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8

LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8 Inżynieria Oprogramowania 2013/14 LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8 Hierarchia klas: TestCase klasa testująca, będąca klasą bazową dla wszystkich przypadków testowych. Zawiera przypadki testowe

Bardziej szczegółowo

Wywoływanie metod zdalnych

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

Bardziej szczegółowo

METODY PROGRAMOWANIA

METODY PROGRAMOWANIA METODY PROGRAMOWANIA Testy jednostkowe 8 grudnia 2017 Krzysztof Pawłowski kpawlowski@pjwstk.edu.pl PO CO NAM TESTY? weryfikacja poprawności sprawdzanie regresji specyfikacja dokumentacja wymuszanie dobrego

Bardziej szczegółowo

Podejście obiektowe do budowy systemów rozproszonych

Podejście obiektowe do budowy systemów rozproszonych Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak 1 Mechanizm RMI umożliwia

Bardziej szczegółowo

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Podejście obiektowe do budowy systemów rozproszonych

Podejście obiektowe do budowy systemów rozproszonych Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak (IIPP) 1 Mechanizm

Bardziej szczegółowo

Architektury Usług Internetowych. Laboratorium 1. Servlety

Architektury 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ółowo

Java wybrane technologie

Java 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ółowo

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Laboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz

Laboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz Aplikacja internetowa zbudowana w oparciu o środowisko Visual Web Java Server Faces. Zarządzanie obiektami typu SesionBeans, RequestBeen i ApplicationBeans, Laboratorium 1 Wzorce oprogramowania lab1, Okres

Bardziej szczegółowo

Wybrane działy Informatyki Stosowanej

Wybrane działy Informatyki Stosowanej Wybrane działy Informatyki Stosowanej Java Enterprise Edition. WebServices. Język XML. Serwer aplikacji GlassFish. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki

Bardziej szczegółowo

Java wybrane technologie spotkanie nr 3. Serwlety

Java wybrane technologie spotkanie nr 3. Serwlety Java wybrane technologie spotkanie nr 3 Serwlety 1 Klient-Serwer Odpowiedzialność serwera przyjmowanie żądań od klienta przygotowywanie odpowiedzi statyczna dynamiczna Rodzaje odpowiedzi statyczna dynamiczna

Bardziej szczegółowo

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia) Program szkolenia: Całościowe podejście do testowania automatycznego dla programistów Ruby (TDD, BDD, Spec. by Example, wzorce, narzędzia) Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania:

Bardziej szczegółowo

Testowanie II. Cel zajęć. Pokrycie kodu

Testowanie II. Cel zajęć. Pokrycie kodu Cel zajęć Celem zajęć jest zapoznanie studentów z uzupełniającymi zagadnieniami dotyczącymi testowania wytwarzanego oprogramowania. W pierwszej części zajęć przedstawiona zostanie metoda oceny kompletności

Bardziej szczegółowo

Programowanie w Sieci Internet JSP ciąg dalszy. Kraków, 9 stycznia 2015 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie w Sieci Internet JSP ciąg dalszy. Kraków, 9 stycznia 2015 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet JSP ciąg dalszy Kraków, 9 stycznia 2015 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić JSP tags, Używanie tagów, Custom tags, JSP objests, Obiekty

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

TESTOWANIE OPROGRAMOWANIA

TESTOWANIE OPROGRAMOWANIA TESTOWANIE OPROGRAMOWANIA Uważaj na ten program ja tylko udowodniłem jego poprawność, nie testowałem go Donald Knuth Plan prezentacji 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem

Bardziej szczegółowo

Platformy Technologiczne

Platformy Technologiczne i Platformy Technologiczne Laboratorium nr 5 Java: testy jednostkowe z biblioteką JUnit Projekt opracowany w ramach laboratorium nr 5 będzie wykorzystywany w czasie laboratorium nr 6 należy zachować przygotowaną

Bardziej szczegółowo

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka stub interfejs serwer szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Serwery aplikacji. dr Radosław Matusik. radmat

Serwery aplikacji. dr Radosław Matusik.   radmat www.math.uni.lodz.pl/ radmat Ciasteczka trwałe i sesyjne Ciasteczka trwałe - pozostają na komputerze użytkownika po zamknięciu strony, z której zostały pobrane / przeglądarki. Ciasteczka sesyjne - są związane

Bardziej szczegółowo

WebNotarius. Specyfikacja techniczna komunikacji z usługą WebNotarius. wersja 1.1

WebNotarius. Specyfikacja techniczna komunikacji z usługą WebNotarius. wersja 1.1 WebNotarius Specyfikacja techniczna komunikacji z usługą WebNotarius wersja 1.1 Spis treści 1. WSTĘP... 3 1.1 PRZEBIEG TRANSAKCJI W PROTOKOLE DVCS... 3 2. PROTOKÓŁ SOAP... 4 2.1 Poświadczenie ważności

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

Testowanie aplikacji mobilnych na platformie Android - architektura, wzorce, praktyki i narzędzia

Testowanie aplikacji mobilnych na platformie Android - architektura, wzorce, praktyki i narzędzia Program szkolenia: Testowanie aplikacji mobilnych na platformie Android - architektura, wzorce, Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Testowanie aplikacji mobilnych na

Bardziej szczegółowo

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.

Serwery 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ółowo

Program szkolenia: REST i Microservices w PHP

Program 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ółowo

Automatyczne testowanie aplikacji Android

Automatyczne testowanie aplikacji Android Automatyczne testowanie aplikacji Android Arkadiusz Konior! 4developers!! Warszawa 7 kwietnia 2014 Agenda Testowanie Android Testing Framework Robotium Espresso monkey monkeyrunner UIAutomator Robolectric

Bardziej szczegółowo

Elementy 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. 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ółowo

Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI

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

Bardziej szczegółowo

Remote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1

Remote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1 P d jś i bi kt d b d t ó Podejście obiektowe do budowy systemów rozproszonych Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java),wywiedziony idi z Remote obie kt aplikacja klie ncka interfe js serw

Bardziej szczegółowo

Testy automatyczne. Korzystające z junit

Testy automatyczne. Korzystające z junit Testy automatyczne Korzystające z junit Cytaty Kiedy zawiesza się program konkurencji, to jest awaria. Kiedy zawiesza się własny program, to jest drobiazg. Często po awarii pojawia się komunikat typu ID

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

Programowanie zespołowe

Programowanie zespołowe Programowanie zespołowe Laboratorium 3 - podstawy testów jednostkowych mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 7 marca 2017 1 / 22 mgr inż. Krzysztof Szwarc Programowanie zespołowe

Bardziej szczegółowo

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse 1 Cel laboratorium: Nabycie umiejętności przygotowywania testów akceptacyjnych za pomocą narzędzia FitNesse 1. Wg wskazówek

Bardziej szczegółowo

TestNG: testowanie jednostkowe nowej generacji

TestNG: testowanie jednostkowe nowej generacji TestNG: testowanie jednostkowe nowej generacji Bartosz Walter Instytut Informatyki Politechniki Poznańskiej 1 Wprowadzenie TestNG jest nowej generacji biblioteką do tworzenia testów jednostkowych w języku

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

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów

Bardziej szczegółowo

Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF

Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF O mnie 12 lat doświadczenia w systemach WEB Java/JEE (ISC) 2 CISSP CTO w J-LABS GET / HTTP/1.1 Host: bank.pl User-Agent: Mozilla/5.0

Bardziej szczegółowo

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 09

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 09 Plan Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 09 T. Romańczukiewicz Jagiellonian University 2009/2010 Plan Plan 1 Serwlety Plan Serwlety Przypomnienie Serwlety - wstęp Wstęp Możliwości

Bardziej szczegółowo

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton Dzisiejszy wykład Wzorce projektowe Visitor Client-Server Factory Singleton 1 Wzorzec projektowy Wzorzec nazwana generalizacja opisująca elementy i relacje rozwiązania powszechnie występującego problemu

Bardziej szczegółowo

Enterprise JavaBeans

Enterprise JavaBeans Enterprise JavaBeans 1. Wprowadzenie. 2. Przegląd komponentów EJB. komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 3. Kontener komponentów EJB: JBoss. 1 Enterprise JavaBeans

Bardziej szczegółowo

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 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ółowo

Całościowe podejście do testowania automatycznego dla programistów. /C#/PHP (TDD, BDD, Spec. by Example, wzorce, narzędzia)

Całościowe podejście do testowania automatycznego dla programistów. /C#/PHP (TDD, BDD, Spec. by Example, wzorce, narzędzia) Program szkolenia: Całościowe podejście do testowania automatycznego dla programistów Java /C#/PHP (TDD, BDD, Spec. by Example, wzorce, narzędzia) Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.3. Formularze

Języki programowania wysokiego poziomu. PHP cz.3. Formularze Języki programowania wysokiego poziomu PHP cz.3. Formularze Formularze Sposób przesyłania danych formularza do serwera zależy od wybranej metody HTTP: Metoda GET

Bardziej szczegółowo

2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK

2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK Zaawansowane aplikacje internetowe EJB 2 Celem tego laboratorium jest pokazanie, w jaki sposób aplikacje stworzone w różnych technologiach mogą korzystać z funkcjonalności udostępnianej przez komponenty

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium Architektura Spring.

Zaawansowane aplikacje internetowe - laboratorium Architektura Spring. Zaawansowane aplikacje internetowe - laboratorium Architektura Spring. Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej architekturę Spring. Aplikacja składa się z jednego

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

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

Serwlety i JSP na platformie Java EE. Damian Makarow

Serwlety i JSP na platformie Java EE. Damian Makarow Serwlety i JSP na platformie Java EE Damian Makarow Przebieg prezentacji Serwlety JSP Serwlety a aplikacje Java EE Sesje Ciasteczka Cykl życia Znaczniki Scope JSTL Serwlety+JSP Serwlety i JSP na platformie

Bardziej szczegółowo

Proxy (pełnomocnik) Cel: Zastosowanie: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego.

Proxy (pełnomocnik) Cel: Zastosowanie: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego. Proxy (pełnomocnik) Cel: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego. Zastosowanie: Wszędzie tam, gdzie oczekujemy bardziej zaawansowanego odwołania do obiektu, niż zwykły

Bardziej szczegółowo

Gatesms.eu Mobilne Rozwiązania dla biznesu

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

Bardziej szczegółowo

Java Enterprise Edition spotkanie nr 4. Java Server Pages c.d.

Java Enterprise Edition spotkanie nr 4. Java Server Pages c.d. Java Enterprise Edition spotkanie nr 4 Java Server Pages c.d. 1 Opracował Jacek Sroka Implict variables & objects application javax.servlet.servletcontext np. application.log() lub getrealpath("/web-inf/licznik.txt")

Bardziej szczegółowo

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.

Serwery 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ółowo

Projektowanie Aplikacji Internetowych Jarosław Kuchta. Wzorce projektowe warstwy biznesowej

Projektowanie Aplikacji Internetowych Jarosław Kuchta. Wzorce projektowe warstwy biznesowej Jarosław Kuchta Wzorce projektowe warstwy biznesowej Wzorce projektowe dotyczące danych, obiektów i logiki biznesowej Transfer Object Assembler Łączy dane pochodzące z różnych komponentów biznesowych Composite

Bardziej szczegółowo

Projektowanie Aplikacji Internetowych. Wzorce projektowe warstwy usług

Projektowanie Aplikacji Internetowych. Wzorce projektowe warstwy usług Wzorce projektowe warstwy usług Wzorce projektowe warstwy usług Service Locator Ułatwia wyszukanie komponentów usługowych Service Activator Umożliwia asynchroniczne przesyłanie żądań do komponentów biznesowych

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

Przegląd narzędzi do automatycznego testowania aplikacji internetowych. Jan Płoszczyca SKISR 2006

Przegląd narzędzi do automatycznego testowania aplikacji internetowych. Jan Płoszczyca SKISR 2006 Przegląd narzędzi do automatycznego testowania aplikacji internetowych Jan Płoszczyca SKISR 2006 Plan prezentacji Problemy przy tworzeniu serwisów Definicja zautomatyzowanego testowania Mity i fakty związane

Bardziej szczegółowo

JUnit TESTY JEDNOSTKOWE. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska

JUnit TESTY JEDNOSTKOWE. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska JUnit TESTY JEDNOSTKOWE Waldemar Korłub Platformy Technologiczne KASK ETI Politechnika Gdańska Testy aplikacji 2 Ręczne testowanie Czasochłonne Powtarzalność trudna do uzyskania Nudne Testowanie automatyczne

Bardziej szczegółowo

Aplikacje Internetowe, Servlety, JSP i JDBC

Aplikacje Internetowe, Servlety, JSP i JDBC Aplikacje Internetowe, Servlety, JSP i JDBC Opis Java 2 Enterprise Edition (JEE) jest potężną platformą do tworzenia aplikacji webowych. PLatforma JEE oferuje wszystkie zalety tworzenia w Javie plus wszechstronny

Bardziej szczegółowo

Aplikacje webowe z wykorzystaniem Node.js oraz Express

Aplikacje 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ółowo

Google Web Toolkit Michał Węgorek ZPO 2009

Google Web Toolkit Michał Węgorek ZPO 2009 Google Web Toolkit Michał Węgorek ZPO 2009 Plan prezentacji Czym jest GWT? Co daje GWT motywacja Po co tłumaczyć Javę do JavaScriptu? - AJAX niebezpieczeństwa - Przewaga GWT nad AJAX - RPC - Utrzymywanie

Bardziej szczegółowo

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Statyczne strony HTML Wczytanie statycznej strony HTML sprowadza się do odebrania żądania przez serwer, odnalezienia właściwego pliku

Bardziej szczegółowo

J2EE wzorce projektowe. Alicja Truszkowska

J2EE wzorce projektowe. Alicja Truszkowska J2EE wzorce projektowe Alicja Truszkowska Motywacja Znaczące miejsce J2EE pośród systemów biznesowych Bogactwo narzędzi i technologii Dobre praktyki projektowania aplikacji Każde, nawet najdoskonalsze

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

Wprowadzenie do JSP. Marcin Apostoluk, Tadeusz Pawlus, Wojciech Walczak. Technologie Biznesu Elektronicznego, 7 marzec 2006

Wprowadzenie do JSP. Marcin Apostoluk, Tadeusz Pawlus, Wojciech Walczak. Technologie Biznesu Elektronicznego, 7 marzec 2006 Marcin Apostoluk Tadeusz Pawlus Wojciech Walczak Technologie Biznesu Elektronicznego, 7 marzec 2006 Plan prezentacji 1 2 3 4 5 6 7 Kto się tym zajmuje? Opis serwletu Przykład Serwlety inne niż HTTP Aplikacje

Bardziej szczegółowo

Pakiet webmathematica jako narzędzie wspomagające proces dydaktyczny przedmiotu mechanika. Łukasz Maciejewski, Wojciech Myszka, Stanisław Piesiak

Pakiet webmathematica jako narzędzie wspomagające proces dydaktyczny przedmiotu mechanika. Łukasz Maciejewski, Wojciech Myszka, Stanisław Piesiak Pakiet webmathematica jako narzędzie wspomagające proces dydaktyczny przedmiotu mechanika Łukasz Maciejewski, Wojciech Myszka, Stanisław Piesiak Mathematica Pakiet obliczeniowy do rozwiązywania zagadnień

Bardziej szczegółowo

Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o

Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa

Bardziej szczegółowo

SIP: Session Initiation Protocol. Krzysztof Kryniecki 16 marca 2010

SIP: Session Initiation Protocol. Krzysztof Kryniecki 16 marca 2010 SIP: Session Initiation Protocol Krzysztof Kryniecki 16 marca 2010 Wprowadzenie Zaaprobowany przez IETF w 1999 (RFC 2543) Zbudowany przez Mutli Parry Multimedia Session Control Working Group : MMUSIC Oficjalny

Bardziej szczegółowo

Aplikacje RMI Lab4

Aplikacje RMI   Lab4 Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych 1 1. Koncepcja budowy aplikacji RMI (aplikacja rozproszonych

Bardziej szczegółowo

Architektury Usług Internetowych. Laboratorium 2 RESTful Web Services

Architektury Usług Internetowych. Laboratorium 2 RESTful Web Services 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

Bardziej szczegółowo

Ruby i Ruby on Rails. Mateusz Drożdżyński

Ruby i Ruby on Rails. Mateusz Drożdżyński Ruby i Ruby on Rails Mateusz Drożdżyński Co to Ruby? Dynamiczny, obiektowy język programowania, stworzony przez Yukihiro Matsumoto Pojawił się w tym samym roku co Java (1995) Przejrzysta, prosta i intuicyjna

Bardziej szczegółowo