JavaServer Faces Wydanie III.pdf

(570 KB) Pobierz
Idź do
• Spis treści
• Przykładowy rozdział
Katalog książek
• Katalog online
• Zamów drukowany
katalog
Twój koszyk
• Dodaj do koszyka
Cennik i informacje
• Zamów informacje
o nowościach
• Zamów cennik
Czytelnia
• Fragmenty książek
online
JavaServer Faces.
Wydanie III
Autorzy:
David Geary, Cay S. Horstmann
Tłumaczenie: Mikołaj Szczepaniak
ISBN: 978-83-246-2904-6
Tytuł oryginału:
Core JavaServer Faces (3rd Edition)
Format: 172×245, stron: 584
Kontakt
Helion SA
ul. Kościuszki 1c
44-100 Gliwice
tel. 32 230 98 63
e-mail: helion@helion.pl
© Helion 1991–2011
Ta książka zawiera wszystko, czego Ci potrzeba do opanowania frameworka JSF 2.0!
• Jak korzystać ze znaczników JSF?
• Jak tworzyć komponenty złożone?
• Jak nawiązywać połączenie z bazami danych i usługami zewnętrznymi?
JavaServer Faces (JSF) to technologia platformy Java EE, ułatwiająca projektowanie i tworzenie
interfejsów użytkownika aplikacji internetowych. Umożliwia sprawną pracę nad aplikacjami
działającymi po stronie serwera i wprowadzanie jasnego podziału na wizualną prezentację oraz
właściwą logikę aplikacji. Specyfikacja JSF 2.0 (inaczej niż poprzednia) jest pochodną wielu
rzeczywistych projektów open source. Dzięki temu sam framework jest dużo prostszy i lepiej
zintegrowany ze stosem technologii Java EE niż wersja JSF 1.0. Co więcej, jego specyfikacja
przewiduje teraz obsługę technologii takich, jak AJAX czy REST. Framework JSF 2.0 jest obecnie
jednym z najznamienitszych frameworków aplikacji internetowych tworzonych w Javie. Do jego
mocnych stron należą także: uproszczony model programowania poprzez zastosowanie adnotacji
i wprowadzenie zasady konwencji ponad konfiguracją oraz rozszerzalny model komponentów.
Książka „JavaServer Faces. Wydanie III” zawiera wszystko, czego trzeba do opanowania
rozbudowanych elementów frameworka JSF 2.0. Poznaj tajniki znaczników frameworka JSF oraz
obsługi zdarzeń. Dowiedz się, jak budować komponenty złożone, i naucz się implementować własne,
niestandardowe. Wykorzystaj w swoich aplikacjach technologię AJAX i opanuj nawiązywanie
połączeń z bazami danych czy innymi usługami zewnętrznymi. W ostatnim rozdziale znajdziesz
pomocne wskazówki na temat diagnozowania i rejestrowania zdarzeń, a także praktyczne
przykłady kodu, rozszerzające technologię JSF.
• Komponenty zarządzane
• Zasięg komponentów
• Nawigacja statyczna i dynamiczna
• Znaczniki standardowe
• Facelety
• Tabele danych
• Konwersja i weryfikacja danych
• Obsługa zdarzeń
• Komponenty złożone
• Technologia AJAX
• Usługi zewnętrzne
• Praca z bazami danych
Spis treÊci
Przedmowa .................................................................................................................... 9
Podziökowania ............................................................................................................. 13
RozdziaÄ 1. Wprowadzenie .......................................................................................................................15
Dlaczego wybieramy technologiö JavaServer Faces? ........................................................ 15
Prosty przykäad ............................................................................................................. 16
Elementy skäadowe ................................................................................................. 18
Struktura katalogów ................................................................................................ 19
Kompilacja przykäadowej aplikacji ............................................................................. 21
Wdra anie aplikacji technologii JSF ........................................................................... 22
rodowiska wytwarzania dla JSF .................................................................................... 24
Analiza przykäadowej aplikacji ........................................................................................ 26
Komponenty ........................................................................................................... 27
Strony technologii JSF ............................................................................................. 29
Konfiguracja serwletu .............................................................................................. 31
Pierwsze spojrzenie na technologiö Ajax
............................................................... 33
Usäugi frameworku JSF .................................................................................................. 36
Mechanizmy wewnötrzne ............................................................................................... 38
Wizualizacja stron ................................................................................................... 38
Dekodowanie ñdaþ ................................................................................................ 39
Cykl ycia aplikacji JSF ............................................................................................ 40
Podsumowanie ............................................................................................................ 42
RozdziaÄ 2. Komponenty zarz¾dzane ...................................................................................................... 43
Definicja komponentu ................................................................................................... 43
Wäa ciwo ci komponentu ........................................................................................ 46
Wyra enia reprezentujñce warto ci ........................................................................... 47
Komponenty wspierajñce ......................................................................................... 48
Komponenty CDI
.................................................................................................... 49
Pakiety komunikatów .................................................................................................... 50
Komunikaty obejmujñce zmienne .............................................................................. 52
Konfigurowanie ustawieþ regionalnych aplikacji ......................................................... 53
Przykäadowa aplikacja ................................................................................................... 54
Zasiög komponentów .................................................................................................... 60
Zasiög sesji ............................................................................................................ 61
4
JavaServer Faces
Zasiög ñdania ....................................................................................................... 62
Zasiög aplikacji ....................................................................................................... 63
Zasiög konwersacji
........................................................................................... 63
Zasiög widoku
.............................................................................................. 64
Zasiögi niestandardowe
................................................................................. 65
Konfigurowanie komponentów ....................................................................................... 65
Wstrzykiwanie komponentów CDI
....................................................................... 65
..................................................... 66
Wstrzykiwanie komponentów zarzñdzanych
Adnotacje cyklu ycia komponentu ............................................................................ 66
Konfigurowanie komponentów zarzñdzanych na poziomie XML-a ................................. 67
Skäadnia jözyka wyra eþ ................................................................................................ 72
Tryby l-warto ci i r-warto ci ....................................................................................... 72
Stosowanie nawiasów kwadratowych ........................................................................ 73
Wyra enia odwoäujñce siö do map i list ..................................................................... 73
Wywoäywanie metod i funkcji <rysunek JSF 2.0> ........................................................ 74
Przetwarzanie wyrazu poczñtkowego ......................................................................... 76
Wyra enia zäo one ................................................................................................... 77
Wyra enia odwoäujñce siö do metod ......................................................................... 78
Parametry wyra eþ odwoäujñcych siö do metod
................................................ 79
Podsumowanie ............................................................................................................ 80
RozdziaÄ 3. Nawigacja ..............................................................................................................................81
Nawigacja statyczna ..................................................................................................... 81
Nawigacja dynamiczna .................................................................................................. 82
Odwzorowywanie wyników na identyfikatory widoków .................................................. 83
Aplikacja JavaQuiz ................................................................................................... 85
Przekierowania ............................................................................................................. 93
Przekierowanie i obiekt flash
.......................................................................... 94
Nawigacja zgodna ze stylem REST i adresy URL zapewniajñce mo liwo è
stosowania zakäadek
......................................................................................... 95
Parametry widoku ................................................................................................... 96
ãñcza ñdaþ GET ..................................................................................................... 97
Okre lanie parametrów ñdania ............................................................................... 98
Dodanie äñczy umo liwiajñcych stosowanie zakäadek do aplikacji quizu ........................ 99
Zaawansowane techniki nawigacji ................................................................................ 103
Symbole wieloznaczne ........................................................................................... 104
Stosowanie elementu from-action ........................................................................... 104
Warunkowe przypadki nawigacji
.................................................................... 105
Dynamiczne identyfikatory widoków docelowych
............................................. 105
Podsumowanie .......................................................................................................... 105
RozdziaÄ 4. Znaczniki standardowe JSF ...............................................................................................107
Przeglñd podstawowych znaczników JSF ....................................................................... 108
Atrybuty, parametry i facety .................................................................................... 109
Przeglñd znaczników JSF reprezentujñcych znaczniki HTML (JSF HTML) ........................... 110
Atrybuty wspólne ................................................................................................... 112
Panele ....................................................................................................................... 120
Znaczniki head, body i form ......................................................................................... 122
Elementy formularzy i skrypty jözyka JavaScript ....................................................... 123
Jedno- i wielowierszowe pola tekstowe ......................................................................... 127
Pola ukryte ........................................................................................................... 130
Stosowanie jedno- i wielowierszowych pól tekstowych .............................................. 130
Wy wietlanie tekstu i obrazów ................................................................................ 133
Spis treÊci
5
Przyciski i äñcza .......................................................................................................... 136
Stosowanie przycisków .......................................................................................... 138
Stosowanie äñczy poleceþ ...................................................................................... 142
Znaczniki selekcji ....................................................................................................... 145
Pola wyboru i przyciski opcji ................................................................................... 148
Menu i listy .......................................................................................................... 150
Elementy .............................................................................................................. 152
Komunikaty ............................................................................................................... 169
Podsumowanie .......................................................................................................... 174
RozdziaÄ 5. Facelety
....................................................................................................................175
Znaczniki projektu Facelets ......................................................................................... 175
Stosowanie szablonów technologii Facelets .................................................................. 176
Budowanie stron na podstawie wspólnych szablonów .............................................. 179
Organizacja widoków ............................................................................................. 182
Dekoratory ........................................................................................................... 188
Parametry ............................................................................................................. 189
Znaczniki niestandardowe ........................................................................................... 190
Komponenty i fragmenty ........................................................................................ 192
Zakoþczenie .............................................................................................................. 193
Znacznik <ui:debug> ............................................................................................. 193
Znacznik <ui:remove> ........................................................................................... 195
Obsäuga znaków biaäych ......................................................................................... 196
Podsumowanie .......................................................................................................... 196
RozdziaÄ 6. Tabele danych ......................................................................................................................197
Znacznik tabeli danych — h:dataTable ......................................................................... 197
Prosta tabela ............................................................................................................. 198
Atrybuty znacznika h:dataTable .............................................................................. 201
Atrybuty znacznika h:column .................................................................................. 201
Nagäówki, stopki i podpisy ........................................................................................... 201
Style ......................................................................................................................... 205
Style stosowane dla kolumn .................................................................................. 206
Style stosowane dla wierszy .................................................................................. 207
Znacznik ui:repeat
...................................................................................... 207
Komponenty JSF w tabelach ........................................................................................ 208
Edycja tabel ............................................................................................................... 212
Edycja komórek tabeli ........................................................................................... 212
Usuwanie wierszy
........................................................................................ 215
Tabele bazy danych .................................................................................................... 218
Modele tabel ............................................................................................................. 222
Wy wietlanie numerów wierszy ............................................................................... 222
Identyfikacja wybranego wiersza ............................................................................. 223
Sortowanie i filtrowanie ......................................................................................... 223
Techniki przewijania ................................................................................................... 230
Przewijanie z u yciem paska przewijania ................................................................. 230
Przewijanie za pomocñ widgetów stronicowania ....................................................... 231
Podsumowanie .......................................................................................................... 232
RozdziaÄ 7. Konwersja i weryfikacja poprawnoÊci danych ...............................................................233
Przeglñd procesu konwersji i weryfikacji poprawno ci .................................................... 233
Stosowanie konwerterów standardowych ...................................................................... 235
Konwersja liczb i dat ............................................................................................. 235
Zgłoś jeśli naruszono regulamin