Aplikacje WWW - laboratorium



Podobne dokumenty
Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium

Laboratorium 1 Wprowadzenie do PHP

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

b) Jako nazwę projektu wpisz SerwletyJSPJSTL. Nie zmieniaj wartości pozostałych opcji. Kliknij przycisk Next >.

Aplikacje WWW - laboratorium

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

Podstawy JavaScript ćwiczenia

Aplikacje WWW - laboratorium

Aplikacje internetowe - laboratorium

INSTALACJA I KONFIGURACJA SERWERA PHP.

Podstawowe wykorzystanie Hibernate

Zaawansowane aplikacje internetowe

Przykładowa integracja systemu Transferuj.pl

Aplikacje WWW - laboratorium

Zaawansowane aplikacje WWW - laboratorium

Zaawansowane aplikacje internetowe - laboratorium

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie

Aplikacje WWW - laboratorium

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

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Wstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1

Projektowanie aplikacji internetowych laboratorium

Aplikacje WWW - laboratorium

Programowanie wielowarstwowe i komponentowe

Testowanie podstawowej konfiguracji serwera w środowisku NetBeans

Aplikacje www laboratorium

Aplikacje internetowe - laboratorium

Laboratorium 6 Tworzenie bloga w Zend Framework

Architektury Usług Internetowych. Laboratorium 1. Servlety

Zajęcia 4 - Wprowadzenie do Javascript

Web Services (SOAP) Ćwiczenie 1

Aplikacje internetowe i rozproszone - laboratorium

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

Przykładowa integracja systemu tpay.com KIP S.A. ul. Św. Marcin 73/ Poznań.

Java Database Connectivity

Szablon główny (plik guestbook.php) będzie miał postać:

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

Budowa aplikacji wielowarstwowych. Zastosowanie szablonów

JSF 1.2. w wykonaniu NetBeans IDE 6.1. Jacek Laskowski

Zaawansowane aplikacje internetowe laboratorium

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Zaawansowane aplikacje internetowe - laboratorium Architektura Spring.

Zaawansowane aplikacje internetowe

SSK - Techniki Internetowe

13. Konfiguracja proxy http, smtp, pop3, ftp, ssl

Zdarzenia Zdarzenia onload i onunload

Na początku utworzymy formularz w czystym języku HTML i przetestujemy go za pomocą przeglądarki WWW.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Programowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Podstawy programowania (PHP/Java)

Java EE: JSF + EJB + JPA

Enterprise JavaBeans (EJB)

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

Wybrane działy Informatyki Stosowanej

4. Należy następnie zaakceptować postanowienia umowy licencyjnej i nacisnąć przycisk Next.

Zaawansowane aplikacje internetowe laboratorium REST

Opis aktualizacji programu Kancelaria Komornika

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

,Aplikacja Okazje SMS

Wypożyczalnia by CTI. Instrukcja

WOJEWÓDZTWO PODKARPACKIE

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

System Zdalnej Obsługi Certyfikatów Instrukcja użytkownika

Opisane poniżej czynności może wykonać administrator komputera lub administrator serwera SQL (tj. użytkownik sa).

Synchronizator plików (SSC) - dokumentacja

1) Przygotowanie środowiska pracy.

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz

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

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

Wykład 03 JavaScript. Michał Drabik

I2: J2ME programowanie w NetBeans IDE Wydział Transportu PW semestr /11

Ćwiczenie dotyczące platformy Java EE zostało przygotowane z myślą o środowisku NetBeans w wersji 7.3 (do pobrania z

Programowanie internetowe

Laboratorium - Narzędzia linii uruchamiania w systemie Windows 7

WTYCZKA FARA-TCM Dane techniczne dla twórców zewnętrznych aplikacji do obsługi map cmentarza

epuap Archiwizacja w Osobistym Składzie Dokumentów

Wybrane Działy Informatyki Stosowanej LABORATORIUM 1.

System Zdalnej Obsługi Certyfikatów 2.0 Instrukcja użytkownika

Kadry Optivum, Płace Optivum

Archiwum DG 2016 PL-SOFT

4. Certyfikaty dla pracy w systemie WOW w miejscu z siecią Internet UWAGA

Wysyłka wniosko w ZUS - EKS. Instrukcja użytkownika aplikacji Wysyłka wniosków ZUS EKS

Laboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz

Aplikacje WWW - laboratorium

4. Budowa prostych formularzy, stany sesji, tworzenie przycisków

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows XP

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

Instalacja certyfikatu CCK NBP w przeglądarce Internet Explorer

Nowe notowania epromak Professional

Laboratorium - Narzędzie linii uruchamiania w systemie Windows Vista

E:\DYDAKTYKA\ZAI\ZWWW\Laboratoria\L07\Java Persistence.doc 2011-lis-24, 17:0 Zaawansowane aplikacje internetowe Laboratorium Java Persistence.

2. Podstawy narzędzia Application Builder, budowa strony, kreatory aplikacji

W dowolnej przeglądarce internetowej należy wpisać poniższy adres:

Laboratorium - Narzędzia linii uruchamiania w systemie Windows XP

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller

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

Aplikacje WWW - laboratorium

Transkrypt:

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 (opis sortowania bąbelkowego można znaleźć na stronie http://en.wikipedia.org/wiki/bubble_sort). Do wykonania ćwiczenia potrzebne jest zintegrowane środowisko programistyczne NetBeans IDE 5.0 (do pobrania z http://www.netbeans.org) oraz środowisko J2SE 1.4.2 (lub wyższe). 1. Uruchom narzędzie NetBeans IDE 5.0 2. Z menu głównego wybierz File New Project. W otwartym okienku kreatora projektu wybierz kategorię Web i typ projektu Web Application. Kliknij przycisk Next >.

3. Podaj nazwę projektu, np. labjsp. Kliknij przycisk Finish. 4. Nowy projekt automatycznie posiada domyślną stronę index.jsp, która nie będzie wykorzystywana w tym ćwiczeniu. Po lewej stronie ekranu widoczny jest nawigator projektu. Umożliwia on przeglądanie i rozbudowę projektu. 5. Kolejnym krokiem jest dodanie nowej strony JSP do projektu. Kliknij prawym przyciskiem myszy na węzeł Web Pages. Wybierz polecenie New JSP. Podaj nazwę pliku JSP, np. sort. Uwaga! Nie podawaj rozszerzenia pliku gdyż zostanie ono dodane automatycznie. Kliknij przycisk Finish.

6. Listę wszystkich stron (aktualnie dwie) możesz odnaleźć w nawigatorze projektu. Przełączanie pomiędzy stronami jest możliwe m.in. poprzez dwukrotne kliknięcie lewym przyciskiem myszy na nazwie pliku. Przejdź do edycji pliku sort.jsp. 7. Strona w pliku sort.jsp będzie realizowała sortowanie bąbelkowe zbioru liczb wyspecyfikowanych w definicji tej strony. Wprowadź do pliku sort.jsp następujący kod. <%@page contenttype="text/html"%> <%@page pageencoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> </head> <body> <%! int temp, i; %> <%! boolean change; %> <%! int data[] = {1,6,4,5,3}; %> <%! int size; %> <% size = 5; do { change = false; i = size - 1; do { i--; if (data[i+1]< data[i]) { temp = data[i]; data[i]= data[i+1]; data[i+1]= temp; change = true; } } while (i!=0); } while (change);

%> Posortowane liczby: <% for (int i = 0; i < size; i++) { %> <%= data [i] %> <% } %> </body> </html> 8. Uruchom stronę za pomocą skrótu Shift+F6. Można to także zrobić klikając prawym przyciskiem na nazwie strony w nawigatorze projektu i wybierając Run nazwa pliku. W środowisko NetBeans wbudowany jest serwer aplikacji Tomcat, który zostanie automatycznie uruchomiony. Komunikat o uruchomienia serwera zostanie wyświetlony u dołu ekranu W oknie przeglądarki zostanie wyświetlona strona sort.jsp 9. Kolejnym krokiem będzie dodanie możliwości określenia przez użytkownika ilości sortowanych liczb. Parametr zostanie przekazany przez formularz HTML metodą POST. Liczby będą generowane losowo. Dodaj do projektu nową stronę (patrz krok 5) o nazwie better_sort.

10. Zastąp domyślnie wygenerowany kod w pliku better_sort.jsp zamieszczonym poniżej. <%@page contenttype="text/html"%> <%@page pageencoding="utf-8"%> <%@page import="java.util.random"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>jsp Page</title> </head> <body><br> <form method="post"> <input type="text" name="c_numbers" value="10" /> <input type="submit" value="sortuj" /> </form><br> <%! int temp, i; %> <%! boolean change; %> <%! int data[]; %> <%! int size; %> <% if (request.getparameter("c_numbers")!= null) size=integer.parseint(request.getparameter("c_numbers")); else size = 10; data = new int[size]; Random generator = new Random(); for (int i = 0; i < size; i++) data[i] = generator.nextint( 100 );; do { change = false; i = size - 1; do { i--; if (data[i+1]< data[i]) { temp = data[i]; data[i] = data[i+1]; data[i+1] = temp; change = true; } } while (i!=0); } while (change); %> Posortowane liczby: <% for (int i = 0; i < size; i++) { %> <%= data[i] %> <% } %> </body> </html>

11. Uruchom stronę za pomocą skrótu Shift+F6. Wprowadź liczbę dodatnia (większą od jeden), np. 25 i kliknij przycisk Sortuj. 12. Strony JSP mogą korzystać z innych stron poprzez włączanie ich zawartości do swojej strony. Niektóre elementy mogą być współdzielone przez wiele stron. Dodaj nową stronę o nazwie header. Umieść w niej poniższy kod. <table bgcolor="#aaaaaa"> <tr> <td> <h1>jsp, sortowanie wersja <% if (request.getparameter("version")!= null) out.println(request.getparameter("version")); else out.println("?"); %> </h1> </td> </tr> </table> 13. Dodaj znacznik włączenia zawartości do plików sort.jsp i better_sort.jsp. Znaczniki umieść na początku sekcji <body>. Dla pliku sort.jsp parametr version powinien przyjąć wartość 1, dla pliku better_sort.jsp wartość 2. <jsp:include page="header.jsp?version=1"/>

14. Uruchom obie strony. 15. Uruchom stronę better_sort, wpisz w pole tekstowe tekst, który nie jest liczbą i kliknij przycisk Sortuj.

16. Dodaj stronę o nazwie error_page. Umieść w niej następujący kod. <%@page contenttype="text/html"%> <%@page pageencoding="utf-8"%> <%@page iserrorpage="true" %> <%@page import="java.io.printwriter"%> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> </head> <body > <h1>błąd </h1> Niestety nie mogę wyświetlić poprawnej strony. <BR><BR><BR> Przyczyna błędu: <BR> <pre> <% exception.printstacktrace(new PrintWriter(out)); %> </pre> </body> </html> 17. Dodaj do strony better_sort, np. na początku pliku, poniższy kod. <%@page errorpage="error_page.jsp" %> 18. Powtórz działanie z kroku nr 15. Zwróć uwagę na adres URL wyświetlonej strony. Zauważ, że użytkownik nie jest świadomy, że żądanie zostało przekierowane do innej strony.

19. Ostatnim krokiem tego ćwiczenia będzie zbudowanie strony, która wykorzystuje mechanizm sesji oraz notację JSP EL. Strona powinna posiadać formularz z polem tekstowym. Wprowadzony przez użytkownika tekst powinien zostać zapisany w sesji i odtworzony przy następnym odwołaniu. Przy każdym wykonaniu strony aktualnie wprowadzony tekst zastępuje tekst przetrzymywany w sesji. Przykładowa implementacja, wzbogacona o licznik odwołań do strony w ramach sesji, została przedstawiona poniżej. Utwórz nową stronę, np. sessiontest i wypełnij ją następującym kodem. <%@page contenttype="text/html"%> <%@page pageencoding="utf-8"%> <%@page import = "java.util.*" session="true"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> </head> <body> <BR> <% Integer sesscounter = (Integer)session.getAttribute("sessCounter"); if (sesscounter == null) sesscounter = new Integer(1); else sesscounter = new Integer(sessCounter.intValue() + 1); session.setattribute("sesscounter", sesscounter); %> ID sesji: <%=session.getid()%> <BR> Ta sesja zaczęła się: <%=new Date(session.getCreationTime())%> <BR> Odwiedziłeś od tego czasu tę stronę: ${sesscounter} raz(y) <BR><BR> Teraz wpisałeś: ${param.f_value} <BR> Ostatnio wpisałeś: ${sessionscope.usertext} <form method="post"> <input type="text" name="f_value" /> <input type="submit" value="prześlij" /> </form><br> <% session.setattribute("usertext", request.getparameter("f_value") ); %> </body> </html>

20. Uruchom stronę za pomocą skrótu Shift+F6 i sprawdź jej działanie.