JavaServer Pages Leksykon kieszonkowy.pdf

(695 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREŒCI
Java Server Pages.
Leksykon kieszonkowy
Autor: Hans Bergsten
T³umaczenie: Adrian Nowak
ISBN: 83-7197-674-7
Tytu³ orygina³u:
JavaServer Pages. Pocket Reference
Liczba stron: 118
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
Java Server Pages (JSP) s³u¿y do tworzenia dynamicznych stron WWW, umo¿liwiaj¹c
harmonijne po³¹czenie dokonañ projektantów i programistów. Wykorzystuje wielkie
mo¿liwoœci serwletów Javy do tworzenia efektywnych, uniwersalnych aplikacji
sieciowych. JSP pozwala na projektowanie prê¿nie dzia³aj¹cych stron WWW o du¿ych
mo¿liwoœciach i — co najwa¿niejsze — nie wymaga zaawansowanych umiejêtnoœci
w dziedzinie programowania w Javie.
JavaServer Pages. Leksykon kieszonkowy stanowi dodatek do bestsellera
wydawnictwa O’Reilly JavaServer Pages, równie¿ autorstwa Hansa Bergstena.
Ksi¹¿ka zawiera szczegó³owe informacje na temat sk³adni i przetwarzania JSP,
elementów dyrektyw, elementów standardowych akcji, elementów skryptowych,
obiektów niejawnych, akcji specjalizowanych, plików TLD i archiwów WAR.
Autor jest za³o¿ycielem firmy Gefion Software. Hans Bergsten by³ równie¿ aktywnym
uczestnikiem grup roboczych opracowuj¹cych specyfikacje serwletów Javy i JSP.
Jako cz³onek komitetu kieruj¹cego projektem Apache Jakarta wniós³ istotny wk³ad
w implementacjê wzorcow¹ Apache Tomcat.
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Przetwarzanie JSP ...................................................................... 6
Dyrektywy .................................................................................. 9
Elementy akcji standardowych................................................. 14
Komentarze............................................................................... 29
Blokowanie interpretacji znaków............................................. 30
Elementy skryptowe ................................................................. 31
Obiekty niejawne...................................................................... 36
Akcje specjalizowane ............................................................... 71
Tworzenie pliku opisu biblioteki znaczników (TLD) ............ 107
Pakowanie i instalacja biblioteki znaczników........................ 112
Pliki archiwów WWW (WAR) .............................................. 115
public void putValue(String name, Object
value)
Począwszy od specyfikacji Servlet 2.2 API metoda ta jest
zastąpiona przez
setAttribute(String, Object).
public void removeValue(String name)
Począwszy od specyfikacji Servlet 2.2 API metoda ta jest
zastąpiona przez
setAttribute(String, Object).
#MELG URGELCNK\QYCPG
Programista mo e rozszerzyć mo liwości języka JSP, definiując
akcje specjalizowane (ang.
custom actions).
Sposób ten pozwala
na wykonanie dowolnych zadań nie przewidzianych w standar-
dowych akcjach JSP, takich jak sprawdzenie poprawności da-
nych lub zmiana sposobu ich prezentacji i lokalizacji.
Składnia stosowana do wykorzystania akcji specjalizowanej jest
taka sama jak dla akcji standardowych: otwarcie znacznika
(opcjonalnie z atrybutami), ciało znacznika i zamknięcie znacz-
nika. Inne elementy oraz treść szablonowa mogą być zagnie -
d one w ciele.
A oto przykład:
<prefiks:nazwaAkcji atr1="value1" atr2="value2">
Ciało znacznika
</prefiks:nazwaAkcji>
Je eli znacznik nie ma ciała, zamiast pełnego otwarcia i za-
mknięcia mo na zastosować notację skrótową:
<prefiks:nazwaAkcji atr1="value1" atr2="value2" />
Zanim jednak wykorzystamy akcję specjalizowaną na stronie
JSP, musimy zadeklarować, w jakiej bibliotece znaczników jest
#MELG URGELCNK\QYCPG
ona zawarta. W tym celu u ywamy dyrektywy
taglib,
wska-
zując bibliotekę i przypisując jej prefiks, za pomocą którego
będziemy identyfikować akcje w obrębie strony.
6YQT\GPKG CMELK URGELCNK\QYCP[EJ
Akcja specjalizowana — a właściwie klasa obsługi znacznika
(ang.
tag handler class)
dla akcji specjalizowanej — jest, ogól-
nie rzecz biorąc, komponentem JavaBean. Jego metody usta-
wiające właściwości odpowiadają atrybutom elementu akcji
specjalizowanej. Ponadto klasa obsługi znacznika musi imple-
mentować jeden z dwóch interfejsów Javy zdefiniowanych
w specyfikacji JSP.
Wszystkie interfejsy i klasy potrzebne do implementacji obsługi
znacznika są zdefiniowane w pakiecie
javax.servlet.
jsp.tagext.
Dwa podstawowe interfejsy to
Tag
i
Body-
Tag.
Interfejs
Tag
określa metody konieczne do implementacji
dla dowolnej akcji. Interfejs
BodyTag
natomiast rozszerza
Tag,
dodając do niego metody wykorzystywane w celu uzyskania
dostępu do ciała znacznika. Aby ułatwić utworzenie klasy ob-
sługi znacznika, w API zdefiniowano dwie klasy pomocnicze:
TagSupport
i
BodyTagSupport
(relacje między nimi uka-
zuje rysunek 4.). Klasy te dostarczają domyślnej implementacji
dla metod nale ących do odpowiednich interfejsów.
Specyfikacja definiuje zarówno interfejsy, jak te wyczerpujące
ich implementację klasy pomocnicze. Je eli mamy ju klasę
oferującą pewien zestaw funkcji i chcielibyśmy udostępnić ją
jako akcję specjalizowaną, mo emy zaznaczyć, e klasa imple-
mentuje stosowny interfejs, i uzupełnić ją o metody określone
w tym interfejsie. W praktyce jednak zalecane jest implemen-
towanie własnych klas obsługi znaczników jako rozszerzeń klas
,CXC5GTXGT 2CIGU .GMU[MQP MKGU\QPMQY[
4[UWPGM 2QFUVCYQYG KPVGTHGLU[ TQ\U\GT\CPKC \PCE\PKMÎY
K MNCU[ QDUoWIK
pomocniczych. W ten sposób otrzymujemy większość metod
„za darmo”, a istniejące klasy mo emy wykorzystać, wywołu-
jąc je z wnętrza klasy obsługi znacznika.
Biblioteka znaczników (ang.
tag library)
jest zbiorem akcji
specjalizowanych. Oprócz plików klas obsługi znaczników musi
ona zawierać plik opisu biblioteki znaczników (Tag
Library
Descriptor,
TLD). Jest to plik XML definiujący odwzorowanie
między nazwami specjalizowanych akcji a odpowiednimi kla-
sami obsługi znaczników oraz opisujący atrybuty obsługiwane
przez ka dą ze specjalizowanych akcji. Pliki klas oraz plik TLD
mogą być spakowane do archiwum JAR, co ułatwia instalację
biblioteki.
#MELG URGELCNK\QYCPG
Zgłoś jeśli naruszono regulamin