Tải bản đầy đủ (.pdf) (74 trang)

Head First Servlets and JSP phần 5 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.18 MB, 74 trang )

XVLQJ-63
\RXDUHKHUH

&RGH0DJQHWV
$QVZHUV
LPSRUW
VHVVLRQ
RXW
LPSRUWMDYDXWLO
#
^!
`
KWPO!ERG\!
$UUD\/LVW
UHTXHVW
SDJH
$UUD\/LVW
VHVVLRQ
JHW3DUDPHWHU´QDPHVµ

JHW$WWULEXWH³QDPHV´
ZKLOH
JHW$WWULEXWH´KREE\µ
DO
UHTXHVW
!

LWKDV1H[W
LPSRUW ´MDYDXWLO´
JHW3DUDPHWHU³KREE\´
,I\RXUDQVZHUORRNVDOLWWOHGLIIHUHQWEXW\RX


VWLOOWKLQNLWVKRXOGZRUN³WU\LW<RX·OOKDYHWR
PDNHWKHVHUYOHWWKDWWDNHVWKHIRUPUHTXHVW
VHWVDQDWWULEXWHDQGIRUZDUGVGLVSDWFKHV
WKHUHTXHVWWRWKH-63

!


7KHIULHQGVZKRVKDUH\RXUKREE\RI
DUHEU!

UHTXHVW
LWQH[W
!
,WHUDWRULW DOLWHUDWRU
!
EU!
ERG\!KWPO!


!

#
Start a scriptlet up here
and end it here.
Use an expression.
Finish the while loop block! (If you
forget this, it wonÕt compile).
`!
We need the import page directive

because of ArrayList and Iterator.
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
R
R-ATHRANDOM
Rhv
R-ATHRANDOM
R3TRINGShFOOv
RNEW3TRING;=
R
R
RFALSE
RNEW#OUNTER
9DOLG"
All primitive literals are Þne.
NO! The semicolon canÕt be here.
String literal is Þne.
Yes, the method returns a double.
NO! You canÕt have a variable declaration here.
Yes, because the new String array is an object, and ANY
object can be sent to a println() statement.

NO! The arithmetic is Þne, but thereÕs a space between
the % and the =. It canÕt be <% =, it must be <%= .
Sure, this resolves to a boolean, so it prints ÔtrueÕ.
We already said primitive literals are Þne.
No problem. This is just like the String[] it prints
the result of the objectÕs toString() method.
6KDUSHQ \RXU SHQFLO
$16:(56
9DOLGDQG,QYDOLG([SUHVVLRQV
YDOLGDQGLQYDOLGH[SUHVVLRQV
)KWUUMV\
9ESYOUCANPUTCOMMENTSINYOUR
*30)FYOUREA*AVAPROGRAMMERWITH
VERYLITTLE(4-,EXPERIENCEYOU
MIGHTlNDYOURSELFTYPING
THISISACOMMENT
WITHOUTTHINKINGTWICE"UTIFYOU
DOTHENUNLESSITSWITHINASCRIPTLET
ORDECLARATIONTAGYOULLENDUP
$)30,!9).'THATTOTHECLIENTASPART
OFTHERESPONSE)NOTHERWORDSTOTHE
#ONTAINERTHOSETWOSLASHESAREJUST
MORETEMPLATETEXTLIKEh(ELLOvOR
h%MAILISv
9OUCANPUTTWODIFFERENTTYPESOF
COMMENTSINA*30

 +70/FRPPHQW!

7KH&RQWDLQHUMXVWSDVVHVWKLVVWUDLJKWRQ

WRWKHFOLHQWZKHUHWKHEURZVHULQWHUSUHWV
LWDVDFRPPHQW

 -63FRPPHQW!

7KHVHDUHIRUWKHSDJHGHYHORSHUVDQG
MXVWOLNH-DYDFRPPHQWVLQD-DYDVRXUFH
ILOHWKH\·UHVWULSSHGRXWRIWKHWUDQVODWHG
SDJH,I\RX·UHW\SLQJD-63DQGZDQWWR
SXWLQFRPPHQWVDERXWZKDW\RX·UHGRLQJ
WKHZD\\RX·GXVHFRPPHQWVLQD-DYD
VRXUFHILOHXVHD-63FRPPHQW
,I\RXZDQWFRPPHQWVWRVWD\DVSDUW
RIWKH+70/UHVSRQVHWRWKHFOLHQW
DOWKRXJKWKHEURZVHUZLOOKLGHWKHPIURP
WKHFOLHQW·VYLHZXVHDQ+70/FRPPHQW

Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

)81NWZ\PMOMVMZI\ML[MZ^TM\

4HE#ONTAINERGENERATESACLASSFROMYOUR*30THAT
IMPLEMENTSTHE(TTP*SP0AGEINTERFACE4HISISTHEONLY
PARTOFTHEGENERATEDSERVLETS!0)THATYOUNEEDTO
KNOW9OUDONTCARETHATIN4OMCATFOREXAMPLEYOUR
GENERATEDSERVLETEXTENDS
RUJDSDFKHMDVSHUUXQWLPH+WWS-VS%DVH
!LLYOUNEEDTOKNOWABOUTARETHETHREEKEYMETHODS
MVS,QLW
MVS'HVWUR\
LQWHUIDFH!!
MDYD[VHUYOHWMVS-VS3DJH
BMVS6HUYLFH+WWS6HUYOHW5HTXHVW+WWS6HUYOHW5HVSRQVH
LQWHUIDFH!!
MDYD[VHUYOHWMVS+WWS-VS3DJH

 MVS,QLW
7KLVPHWKRGLVFDOOHGIURPWKHLQLWPHWKRG
<RXFDQRYHUULGHWKLVPHWKRG&DQ\RXILJXUHRXWKRZ"

 MVS'HVWUR\
7KLVPHWKRGLVFDOOHGIURPWKHVHUYOHW·VGHVWUR\PHWKRG
<RXFDQRYHUULGHWKLVPHWKRGDVZHOO

 BMVS6HUYLFH
7KLVPHWKRGLVFDOOHGIURPWKHVHUYOHW·VVHUYLFHPHWKRG
ZKLFKPHDQVLWUXQVLQDVHSDUDWHWKUHDGIRUHDFKUHTXHVW
7KH&RQWDLQHUSDVVHVWKH5HTXHVWDQG5HVSRQVHREMHFWVWR
WKLVPHWKRG 
<RXFDQ·WRYHUULGHWKLVPHWKRG<RXFDQ·WGR$1<7+,1*ZLWK
WKLVPHWKRG\RXUVHOIH[FHSWZULWHFRGHWKDWJRHVLQVLGHLW

DQGLW·VXSWRWKH&RQWDLQHUYHQGRUWRWDNH\RXU-63FRGH
DQGIDVKLRQWKHBMVS6HUYLFHPHWKRGWKDWXVHVLW
You can override these.
You CANNOT override this!

,W¶V127LQIURQWRIWKHRWKHUWZRPHWKRGV
MVS,QLWDQGMVS'HVWUR\7KLQNRILWWKLV
ZD\WKHXQGHUVFRUHLQIURQWRIWKHPHWKRG
PHDQV³GRQ¶WWRXFK´
6RQRXQGHUVFRUHLQIURQWRIWKHQDPH
PHDQV\RXFDQRYHUULGH%XWLIWKHUH,6
DQXQGHUVFRUHLQIURQWRIWKHPHWKRG
QDPH\RXPXVW127WU\WRRYHUULGHLW
1RWHWKHXQGHUVFRUH
DWWKHIURQWRIWKH
B MVS6HUYLFHPHWKRG
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
4QNMKaKTMWNI2;8
9OUWRITETHEJSPlLE
4HE#ONTAINERWRITESTHEJAVAlLEFORTHESERVLETYOUR*30BECOMES

:HE&RQWDLQHU
.LPZULWHVDMVSÀOH
DQGGHSOR\VLWDV
SDUWRIDZHEDSS

7KH&RQWDLQHU´UHDGVµWKHZHE[PO''IRU
WKLVDSSEXWGRHVQ·WGRDQ\WKLQJHOVHZLWKWKH
MVSÀOHXQWLOWKHÀUVWWLPHLW·VUHTXHVWHG
"[POYHU
VLRQ ´´
HQFRGLQJ
´87)´"!
'2&7<3(
ZHE[PO
:HE&RQWDLQHU
7KHFOLHQWKLWVDOLQN
WKDWDVNVIRUWKHMVS

7KH&RQWDLQHUWULHVWR75$16/$7(WKHMVS
LQWRMDYDVRXUFHFRGHIRUDVHUYOHWFODVV





0\-63BMVSFODVV
SDFNDJHRUJ
DSDFKH
LPSRUW
MD

YD[VHUYOHW
+WWS6HUY
OHW
0\-63BMVSMDYD
KWPO!
ERG\!
LQW[!
+HOOR
 [!
ERG\!
KWPO!
0\-63MVS
WUDQVODWH
UHTXHVW
JHQHUDWH
:HE&RQWDLQHU

7KH&RQWDLQHUWULHVWR&203,/(WKH
VHUYOHWMDYDVRXUFHLQWRDFODVVÀOH
FRPSLOH
JHQHUDWH
JSP syntax errors are
caught in this phase.
Java language/syntax
errors are caught here.
-63OLIHF\FOH
KWPO!
ERG\!
LQW[!
+HOOR

 [!
ERG\!
KWPO!
0\-63MVS
ItÕs just sitting here on
the server waiting for a
client to request it.
SDFNDJHRUJ
DSDFKH
LPSRUW
MD
YD[VHUYOHW
+WWS6HUY
OHW
0\-63BMVSMDYD
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

:HE&RQWDLQHU

7KH&RQWDLQHU/2$'6WKH

QHZO\JHQHUDWHGVHUYOHWFODVV
:HE&RQWDLQHU

7KH&RQWDLQHULQVWDQWLDWHVWKH
VHUYOHWDQGFDXVHVWKHVHUYOHW·V
MVS,QLWPHWKRGWRUXQ
MVS,QLW

7KH&RQWDLQHUFUHDWHVDQHZWKUHDGWR
KDQGOHWKLVFOLHQW·VUHTXHVWDQGWKH
VHUYOHW·VBMVS6HUYLFHPHWKRGUXQV
:HE&RQWDLQHU





0\-63BMVSFODVV
ORDG
0\-63B MVS
0
\
-
6
3
B
M
V
S
EHFRPHV

7KHREMHFWLVQRZDIXOOÁHGJHGVHUYOHW
UHDG\WRDFFHSWFOLHQWUHTXHVWV
0\-63B MVS
BMVS6HUYLFH
(YHU\WKLQJWKDWKDSSHQVDIWHU
WKLVLVMXVWSODLQROGVHUYOHW
UHTXHVWKDQGOLQJ
(YHQWXDOO\WKHVHUYOHWVHQGVD
UHVSRQVHEDFNWRWKHFOLHQWRU
IRUZDUGVWKHUHTXHVWWRDQRWKHU
ZHEDSSFRPSRQHQW
2;8TQNMKaKTMKWV\QV]ML
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
<ZIV[TI\QWVIVLKWUXQTI\QWV
PIXXMV[WVTa76+-
7HENYOUDEPLOYAWEBAPPWITHA*30THE
WHOLETRANSLATIONANDCOMPILATIONSTEPHAPPENS
ONLYONCEINTHE*30SLIFE/NCEITSBEEN
TRANSLATEDANDCOMPILEDITSJUSTLIKEANYOTHER
SERVLET!NDJUSTLIKEANYOTHERSERVLETONCETHAT

SERVLETHASBEENLOADEDANDINITIALIZEDTHEONLY
THINGTHATHAPPENSATREQUESTTIMEISCREATIONOR
ALLOCATIONOFATHREADFORTHESERVICEMETHOD3O
THEPICTUREONTHEPREVIOUSTWOPAGESISFORONLY
THElRSTREQUEST
:RZ,DPWUXO\LPSUHVVHG,
ZRXOGQHYHUKDYHJXHVVHGWKDW
WKH\FRXOGPDNHUHTXHVWLQJD-63
WDNHMXVWDVPXFKRYHUKHDGDVFDOOLQJD
PHWKRGRQDQ(-%,·PWKLQNLQJWKHFOLHQW
KDVWRZDLWZKDW
ÀYHPLQXWHV
IRUDOO
WKDWWUDQVODWLQJFRPSLOLQJDQG
LQLWLDOL]LQJ"
4

/+SOTHATMEANSONLYTHElRSTCLIENTTOASK
FORTHE*30TAKESTHEBIGHIT"UTTHERE-534BEA
WAYTOCONlGURETHESERVERTOPRETRANSLATEAND
COMPILERIGHT
$

!LTHOUGHITSONLYTHEFIRSTCLIENTTHATHASTO
WAITMOST#ONTAINERVENDORS$/GIVEYOUAWAYTOASK
FORTHEWHOLETRANSLATIONCOMPILATIONTHINGTOHAPPEN
INADVANCESOTHATEVENTHEFIRSTREQUESTHAPPENSLIKE
ANYOTHERSERVLETREQUEST
"UTWATCHOUTITSVENDORDEPENDENTANDNOT
GUARANTEED4HERE)3AMENTIONINTHE*30SPEC*30

OFASUGGESTEDPROTOCOLFOR*30PRECOMPILATION
9OUMAKEAREQUESTFORTHE*30APPENDINGAQUERY
STRINGhJSP?PRECOMPILEvANDTHE#ONTAINERMIGHTIF
ITCHOOSESDOTHETRANSLATIONCOMPILATIONRIGHTTHEN
INSTEADOFWAITINGFORTHEFIRSTREALREQUEST
WUDQVODWLRQDQG
FRPSLODWLRQ
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

,IWKH-63WXUQVLQWRD
VHUYOHW,ZRQGHULI,FDQ
FRQÀJXUHVHUYOHWLQLWSDUDPHWHUV
DQGZKLOH,·PDWLW,ZRQGHULI,FDQ
RYHUULGHWKHVHUYOHW·VLQLWPHWKRG
6KDUSHQ \RXU SHQFLO
7KLQNDERXWWKHVHTXHVWLRQV)OLSEDFNWKURXJK
HDUOLHUSDJHVDQGFKDSWHUVLI\RXQHHGWREXW
GRQ·WWXUQWKHSDJHXQWLO\RX·YHGRQHWKLV
<HV\RX&$1JHWVHUYOHWLQLWSDUDPHWHUVIURPD
VHUYOHWWKHTXHVWLRQVDUH

+RZZRXOG\RXUHWULHYHWKHPLQ\RXUFRGH"%LJ
KXJHJUDYHOKDXOLQJKLQWSUHWW\FORVHWRWKHVDPH
ZD\\RXUHWULHYHWKHPLQD´QRUPDOµVHUYOHW)URP
ZKLFKREMHFWGR\RXQRUPDOO\JHWVHUYOHWLQLWSDUDP
HWHUV",VWKDWREMHFWDYDLODEOHWR\RXU-63FRGH"
+RZZKHUHZRXOG\RXFRQILJXUHWKHVHUYOHWLQLW
SDUDPHWHUV"
6XSSRVH\RXGRZDQWWRRYHUULGHWKHLQLW
PHWKRGKRZZRXOG\RXGRLW",VWKHUHVRPHWKLQJ
HOVH\RXFDQGRWKDW·OOJLYH\RXWKHVDPHUHVXOW"
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
1VQ\QITQbQVOaW]Z2;8
9OUCANDOSERVLETINITIALIZATIONSTUFFINYOUR*30BUTITSSLIGHTLY
DIFFERENTFROMWHATYOUDOINAREGULARSERVLET
2YHUULGLQJMVS,QLW
9ESITSTHATSIMPLE)FYOUIMPLEMENTAJSP)NITMETHODTHE#ONTAINERCALLSTHIS
METHODATTHEBEGINNINGOFTHISPAGESLIFEASASERVLET)TSCALLEDFROMTHESERVLETS
INITMETHODSOBYTHETIMETHISMETHODRUNSTHEREISA3ERVLET#ONlGAND
3ERVLET#ONTEXTAVAILABLETOTHESERVLET4HATMEANSYOUCANCALLGET3ERVLET#ONlG
ANDGET3ERVLET#ONTEXTFROMWITHINTHEJSP)NITMETHOD

4HISEXAMPLEUSESTHEJSP)NITMETHODTORETRIEVEASERVLETINITPARAMETER
CONlGUREDINTHE$$ANDUSESTHEVALUETOSETANAPPLICATIONSCOPEDATTRIBUTE

SXEOLFYRLG
MVS,QLW^
6HUYOHW&RQ¿JV&RQ¿J JHW6HUYOHW&RQ¿J
6WULQJHPDLO$GGU V&RQ¿JJHW,QLW3DUDPHWHU³HPDLO´
6HUYOHW&RQWH[WFW[ JHW6HUYOHW&RQWH[W
FW[VHW$WWULEXWH³PDLO´HPDLO$GGU
`
!
Override the jspInit()
method using a declaration.
YouÕre in a servlet, so you
can call your inherited
getServletConÞg() method!
&RQÀJXULQJVHUYOHWLQLWSDUDPHWHUV
9OUCONlGURESERVLETINITPARAMSFORYOUR*30VIRTUALLYTHESAMEWAYYOU
CONlGURETHEMFORANORMALSERVLET4HEONLYDIFFERENCEISTHATYOUHAVE
TOADDAJSPlLEELEMENTWITHINTHESERVLETTAG
ZHEDSS!

VHUYOHW!
VHUYOHWQDPH!0\7HVW,QLWVHUYOHWQDPH!

MVS¿OH!7HVW,QLWMVSMVS¿OH!
LQLWSDUDP!
SDUDPQDPH!HPDLOSDUDPQDPH!
SDUDPYDOXH!LNLFNHGEXWW#ZLFNHGO\VPDUWFRPSDUDPYDOXH!
LQLWSDUDP!

VHUYOHW!

ZHEDSS!
This is EXACTLY what
youÕd do in a normal servlet.
Get a reference to the ServletContext
and set an application-scope attribute.
This is the only line thatÕs different from
a regular servlet. It basically says, Òapply
everything in this <servlet> tag to the
servlet created from this JSP page Ó
RYHUULGLQJMVS,QLW
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

)\\ZQJ]\M[QVI2;8
4HEEXAMPLEONTHEOPPOSITEPAGESHOWSTHE*30SETTINGANAPPLICATIONSCOPED
ATTRIBUTEUSINGAMETHODDECLARATIONTHATOVERRIDESJSP)NIT"UTMOSTOFTHE
TIMEYOULLBEUSINGONEOFTHEFOURIMPLICITOBJECTSTOGETANDSETATTRIBUTES
CORRESPONDINGTOTHEFOURATTRIBUTESCOPESAVAILABLEINA*30
9ESFOUR2EMEMBERINADDITIONTOTHESTANDARDSERVLETREQUESTSESSIONAND

APPLICATIONCONTEXTSCOPESA*30ADDSAFOURTHSCOPEPAGESCOPETHATYOUGET
FROMAPAGE#ONTEXTOBJECT
9OUUSUALLYWONTNEEDORCAREABOUTPAGESCOPEUNLESSYOUREDEVELOPING
CUSTOMTAGSSOWEWONTSAYANYMOREABOUTITUNTILTHECUSTOMTAGSCHAPTER
,QDVHUYOHW ,QD-63
XVLQJLPSOLFLWREMHFWV
$SSOLFDWLRQ
JHW6HUYOHW&RQWH[WVHW$WWULEXWH´IRRµEDU2EM DSSOLFDWLRQVHW$WWULEXWH´IRRµEDU2EM
5HTXHVW
UHTXHVWVHW$WWULEXWH´IRRµEDU2EM UHTXHVWVHW$WWULEXWH´IRRµEDU2EM
6HVVLRQ
UHTXHVWJHW6HVVLRQVHW$WWULEXWH´IRRµEDU2EM VHVVLRQVHW$WWULEXWH´IRRµEDU2EM
3DJH
'RHVQRWDSSO\
SDJH&RQWH[WVHW$WWULEXWH´IRRµEDU2EM
"UTTHISISNTTHEWHOLESTORY)NA*30THERESANOTHERWAYTOGETAND
SETATTRIBUTESATANYSCOPEUSINGONLYTHEPAGE#ONTEXTIMPLICITOBJECT
4URNTHEPAGEANDlNDOUTHOW

7KHQDPLQJFRQYHQWLRQPLJKWWULFN\RXLQWRWKLQNLQJWKDWDWWULEXWHVVWRUHG
LQWKH6HUYOHW&RQWH[WDUHFRQWH[WVFRSH%XWWKHUH¶VQRVXFKWKLQJ
5HPHPEHUZKHQ\RXVHH³&RQWH[W´WKLQN³DSSOLFDWLRQ´%XWWKHUH¶VDQ
LQFRQVLVWHQF\EHWZHHQWKHVHUYOHWDQG-63QDPHVXVHGWRJHWDSS
VFRSHGDWWULEXWHV²LQDVHUYOHW\RXVD\
JHW6HUYOHW&RQWH[WJHW$WWULEXWH³IRR´
EXWLQD-63\RXVD\
DSSOLFDWLRQJHW$WWULEXWH³IRR´
7KHUH·VQRVXFKWKLQJDV´FRQWH[WµVFRSH
HYHQWKRXJKDWWULEXWHVLQDSSOLFDWLRQVFRSH
DUHERXQGWRWKH6HUYOHW&RQWH[WREMHFW

Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
=[QVO8IOM+WV\M`\NWZI\\ZQJ]\M[
9OUCANUSEA0AGE#ONTEXTREFERENCETOGETATTRIBUTES
FROMANYSCOPEINCLUDINGTHEPAGESCOPEFORATTRIBUTES
BOUNDTOTHE0AGE#ONTEXT
4HEMETHODSTHATWORKWITHOTHERSCOPESTAKEANINT
ARGUMENTTOINDICATETHESCOPE!LTHOUGHTHEATTRIBUTE
ACCESSMETHODSCOMEFROM*SP#ONTEXTYOULLlNDTHE
CONSTANTSFORTHESCOPESINSIDETHE0AGE#ONTEXTCLASS
JHW$WWULEXWH6WULQJQDPH
JHW$WWULEXWH6WULQJQDPHLQWVFRSH
JHW$WWULEXWH1DPHV,Q6FRSHLQWVFRSH
ILQG$WWULEXWH6WULQJQDPH
PRUHPHWKRGV
LQFOXGLQJVLPLODUPHWKRGVWR
VHWDQGUHPRYHDWWULEXWHVIURP
DQ\VFRSH
-VS&RQWH[W
$33/,&$7,21B6&23(
3$*(B6&23(

5(48(67B6&23(
6(66,21B6&23(
PRUHILHOGV
JHW5HTXHVW
JHW6HUYOHW&RQILJ
JHW6HUYOHW&RQWH[W
JHW6HVVLRQ
PRUHPHWKRGV
3DJH&RQWH[W
static Þ nal
Þ elds
methods that work
for ANY scope
methods to
get any implicit
object
SDJH&RQWH[WDQGDWWULEXWHV
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

(PDLOLV

 DSSOLFDWLRQJHW$WWULEXWH³PDLO´!
(PDLOLV
 SDJH&RQWH[WJHW$WWULEXWH³PDLO´3DJH&RQWH[W$33/,&$7,21B6&23(!
8VLQJWKHSDJH&RQWH[WWRJHWDQ
DSSOLFDWLRQ
VFRSHGDWWULEXWH
6HWWLQJD
SDJH
VFRSHGDWWULEXWH
)ORDWRQH QHZ)ORDW!
SDJH&RQWH[WVHW$WWULEXWH³IRR´RQH!
8VLQJWKHSDJH&RQWH[WWRVHWD
VHVVLRQ
VFRSHGDWWULEXWH
)ORDWWZR QHZ)ORDW!
SDJH&RQWH[WVHW$WWULEXWH³IRR´WZR3DJH&RQWH[W6(66,21B6&23(!
7ITHINA*30THECODEABOVEISIDENTICALTO
*HWWLQJD
SDJH
VFRSHGDWWULEXWH
 SDJH&RQWH[WJHW$WWULEXWH³IRR´!
8VLQJWKHSDJH&RQWH[WWRJHWD
VHVVLRQ
VFRSHGDWWULEXWH
 SDJH&RQWH[WJHW$WWULEXWH³IRR´3DJH&RQWH[W6(66,21B6&23(!
7HICHISIDENTICALTO VHVVLRQJHW$WWULEXWH³IRR´!
-`IUXTM[][QVOXIOM+WV\M`\\W
OM\IVL[M\I\\ZQJ]\M[

7KHUHDUH7:2RYHUORDGHGJHW$WWULEXWH

PHWKRGV\RXFDQFDOORQSDJH&RQWH[W
DRQHDUJWKDWWDNHVD6WULQJDQGD
WZRDUJWKDWWDNHVD6WULQJDQGDQLQW
7KHRQHDUJYHUVLRQZRUNVMXVWOLNHDOO
WKHRWKHUV²LW¶VIRUDWWULEXWHVERXQG72
WKHSDJH&RQWH[WREMHFW%XWWKHWZRDUJ
YHUVLRQFDQEHXVHGWRJHWDQDWWULEXWH
IURP$1<RIWKHIRXUVFRSHV
SDJH&RQWH[W
JHW$WWULEXWH6WULQJ
LVIRUSDJHVFRSH
8VLQJWKHSDJH&RQWH[WWRÀQGDQDWWULEXWHZKHQ\RXGRQ·W
NQRZ
WKHVFRSH
 SDJH&RQWH[W¿QG$WWULEXWH³IRR´!
7HEREDOESTHElND!TTRIBUTEMETHODLOOK)TLOOKSlRSTINTHEPAGECONTEXTSOIFTHERESAhFOOv
ATTRIBUTEWITHPAGECONTEXTSCOPETHENCALLINGlND!TTRIBUTE3TRINGNAMEONA0AGE#ONTEXTWORKS
JUSTLIKECALLINGGET!TTRIBUTE3TRINGNAMEONA0AGE#ONTEXT"UTIFTHERESNOhFOOvATTRIBUTETHE
METHODSTARTSLOOKINGINOTHERSCOPESFROMMOSTRESTRICTEDTOLEASTRESTRICTEDSCOPEINOTHERWORDS
lRSTREQUESTSCOPETHENSESSIONTHENlNALLYAPPLICATIONSCOPE4HElRSTONEITlNDSWITHTHATNAMEWINS
Þ nd it where?
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.


FKDSWHU
?PQTM_M¼ZMWV\PM[]JRMK\TM\¼[
\ITSUWZMIJW]\\PM\PZMM
LQZMK\Q^M[
7EALREADYLOOKEDATTHEDIRECTIVEUSEDFORGETTINGIMPORTSTATEMENTSINTO
THEGENERATEDSERVLETCLASSMADEFROMYOUR*304HATWASAPAGEDIRECTIVE
ONEOFTHETHREEDIRECTIVETYPESWITHANIMPORTATTRIBUTEONEOF
ATTRIBUTESOFTHEPAGEDIRECTIVE7ELLTAKEAQUICKLOOKNOWATTHEOTHERS
ALTHOUGHSOMEWONTBECOVEREDINDETAILUNTILLATERCHAPTERSANDSOME
WONTBECOVEREDINDETAILATALLINTHISBOOKBECAUSETHEYRERARELYUSED
4

)MCONFUSEDTHISPAGEHEADINGSAYShWHILEWEREONTHESUBJECTv
BUT)DONTSEEHOW
DIRECTIVES
HAVEANYTHINGTODOWITHPAGE#ONTEXTAND
ATTRIBUTES

$
4HEYDONTNOTREALLY7EJUSTSAIDTHATTOCOVERABADPATHETIC
NONEXISTENTTRANSITIONBETWEENTWOUNRELATEDTOPICS7EHOPEDNOBODYWOULD
NOTICEBUT./YOUJUSTCOULDNTLETITGOCOULDYOU
7KHSDJHGLUHFWLYH

$ElNESPAGESPECIlCPROPERTIESSUCHASCHARACTERENCODINGTHE
CONTENTTYPEFORTHISPAGESRESPONSEANDWHETHERTHISPAGESHOULD
HAVETHEIMPLICITSESSIONOBJECT!PAGEDIRECTIVECANUSEUPTO
THIRTEENDIFFERENTATTRIBUTESLIKETHEIMPORTATTRIBUTEALTHOUGH
ONLYFOURATTRIBUTESARECOVEREDONTHEEXAM

7KHWDJOLEGLUHFWLYH

$ElNESTAGLIBRARIESAVAILABLETOTHE*307EHAVENTTALKEDABOUT
USINGCUSTOMTAGSANDSTANDARDACTIONSYETSOTHISMIGHTNOTMAKE
ANYSENSEATTHISPOINT*USTGOWITHITFORNOWWEHAVETWOWHOLE
CHAPTERSONTAGLIBRARIESCOMINGUPSOON
7KHLQFOXGHGLUHFWLYH

$ElNESTEXTANDCODETHATGETSADDEDINTOTHECURRENTPAGE
ATTRANSLATIONTIME4HISLETSYOUBUILDREUSABLECHUNKSLIKEA
STANDARDPAGEHEADINGORNAVIGATIONBARTHATCANBEADDEDTO
EACHPAGEWITHOUTHAVINGTODUPLICATEALLTHATCODEINEACH*30
#SDJHLPSRUW ´IRR´VHVVLRQ ´IDOVH´!
#WDJOLEWDJGLU ´:(%,1)WDJVFRRO´SUH¿[ ´FRRO´!
#LQFOXGH¿OH ´ZLFNHG+HDGHUKWPO´!
WKUHH
GLUHFWLYHV
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

ODQJXDJH

'HILQHVWKHVFULSWLQJODQJXDJHXVHGLQVFULSWOHWVH[SUHVVLRQVDQGGHFODUDWLRQV5LJKWQRZWKHRQO\
SRVVLEOHYDOXHLV´MDYDµEXWWKHDWWULEXWHLVKHUHEHFDXVHLVQ·WLWMXVWOLNHWKRVHVSHFGHYHORSHUVWREH
WKLQNLQJRIWKHIXWXUHZKHQRWKHUODQJXDJHVPLJKWEHXVHG
)\\ZQJ]\M[\W\PM
XIOM
LQZMK\Q^M
H[WHQGV
LPSRUW
VHVVLRQ
EXIIHU
DXWR)OXVK
LV7KUHDG6DIH
LQIR
FRQWHQW7\SH
SDJH(QFRGLQJ
LV(/,JQRUHG
'HILQHVZKHWKHU(/H[SUHVVLRQVDUHLJQRUHGZKHQWKLVSDJHLVWUDQVODWHG:HKDYHQ·WWDONHGDERXW
(/\HWWKDW·VFRPLQJLQWKHQH[WFKDSWHU)RUQRZMXVWNQRZWKDW\RXPLJKWFKRRVHWRLJQRUH(/
V\QWD[LQ\RXUSDJHDQGWKLVLVRQHRIWKHWZRZD\V\RXFDQWHOOWKH&RQWDLQHU
'HILQHVWKHFKDUDFWHUHQFRGLQJIRUWKH-637KHGHIDXOWLV´,62µXQOHVVWKHFRQWHQW7\SH
DWWULEXWHDOUHDG\GHILQHVDFKDUDFWHUHQFRGLQJRUWKHSDJHXVHV;0/'RFXPHQWV\QWD[
'HILQHVWKH0,0(W\SHDQGRSWLRQDOFKDUDFWHUHQFRGLQJIRUWKH-63UHVSRQVH<RXNQRZWKHGHIDXOW
LV(UURU3DJH
HUURU3DJH
'HILQHVD85/WRWKHUHVRXUFHWRZKLFKXQFDXJKW7KURZDEOHVVKRXOGEHVHQW,I\RXGHILQHD-63
KHUHWKHQWKDW-63ZLOOKDYHDQLV(UURU3DJH µWUXHµDWWULEXWHLQLWVSDJHGLUHFWLYH
'HILQHVZKHWKHUWKHFXUUHQWSDJHUHSUHVHQWVDQRWKHU-63·VHUURUSDJH7KHGHIDXOWYDOXHLV´IDOVHµ
EXWLILW·VWUXHWKHSDJHKDVDFFHVVWRWKHLPSOLFLWH[FHSWLRQREMHFWZKLFKLVDUHIHUHQFHWRWKH
RIIHQGLQJ7KURZDEOH,IIDOVHWKHLPSOLFLWH[FHSWLRQREMHFWLVQRWDYDLODEOHWRWKH-63
'HILQHVD6WULQJWKDWJHWVSXWLQWRWKHWUDQVODWHGSDJHMXVWVRWKDW\RXFDQJHWLWXVLQJWKHJHQHUDWHG

VHUYOHW·VLQKHULWHGJHW6HUYOHW,QIRPHWKRG
'HILQHVZKHWKHUWKHJHQHUDWHGVHUYOHWQHHGVWRLPSOHPHQWWKH6LQJOH7KUHDG0RGHOZKLFKDV\RX
NQRZLVD6SHFWDFXODUO\%DG7KLQJ7KHGHIDXOWYDOXHLVµWUXHµZKLFKPHDQV´0\DSSLVWKUHDG
VDIHVR,GR127QHHGWRLPSOHPHQW6LQJOH7KUHDG0RGHOZKLFK,NQRZLVLQKHUHQWO\HYLOµ7KHRQO\
UHDVRQWRVSHFLIL\WKLVDWWULEXWHLVLI\RXQHHGWRVHWWKHDWWULEXWHYDOXHWR´IDOVHµZKLFKPHDQVWKDW
\RXZDQWWKHJHQHUDWHGVHUYOHWWRXVHWKH6LQJOH7KUHDG0RGHOEXW\RXQHYHUZLOO
'HILQHVZKHWKHUWKHEXIIHUHGRXWSXWLVIOXVKHGDXWRPDWLFDOO\7KHGHIDXOWYDOXHLV´WUXHµ
'HILQHVKRZEXIIHULQJLVKDQGOHGE\WKHLPSOLFLWRXWREMHFWUHIHUHQFHWRWKH-VS:ULWHU
'HILQHVZKHWKHUWKHSDJHZLOOKDYHDQLPSOLFLWVHVVLRQREMHFW7KHGHIDXOWYDOXHLV´WUXHµ
'HILQHVWKH-DYDLPSRUWVWDWHPHQWVWKDW·OOEHDGGHGWRWKHJHQHUDWHGVHUYOHWFODVV<RXJHWVRPH
LPSRUWVIRUIUHHE\GHIDXOWMDYDODQJGXKMDYD[VHUYOHWMDYD[VHUYOHWKWWSDQGMDYD[VHUYOHWMVS
'HILQHVWKHVXSHUFODVVRIWKHFODVVWKLV-63ZLOOEHFRPH<RXZRQ·WXVHWKLVXQOHVV\RX5($//<
NQRZZKDW\RX·UHGRLQJ³LWRYHUULGHVWKHFODVVKLHUDUFK\SURYLGHGE\WKH&RQWDLQHU
/FTHEPAGEDIRECTIVEATTRIBUTESINTHE*30SPECONLYFOURARECOVEREDONTHE
EXAM9OUDO./4HAVETOMEMORIZETHEENTIRELISTJUSTGETAFEELFORWHATYOUCANDO
7ELLLOOKATTHEIS%,)GNOREDANDTHETWOERRORRELATEDATTRIBUTESINLATERCHAPTERS
127RQWKHH[DP
3266,%/<RQWKHH[DP
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
7KLVLV68&+DQLFH

FKDSWHUZLWKD9(5<ORYHO\ORRN
DWKRZWRSXW-DYDFRGHLQD-63
EXWXPORRNDWWKLVFRPSDQ\
ZLGHPHPR,MXVWJRW
,QWHURI¿FH0HPRIURPWKH&72

85*(17
(IIHFWLYHLPPHGLDWHO\DQ\RQHFDXJKW
XVLQJVFULSWOHWVH[SUHVVLRQVRU
GHFODUDWLRQVLQWKHLU-63FRGHZLOOEH
VXVSHQGHGZLWKRXWSD\XQWLOVXFKWLPH
DVLWFDQEHGHWHUPLQHGZKHWKHUWKH
SURJUDPPHUZDVIXOO\UHVSRQVLEOHRU
VLPSO\WU\LQJWRPDLQWDLQVRPH27+(5
LGLRW¶VFRGH
,ILQIDFWWKHGHWHUPLQDWLRQLV
PDGHWKDWWKHSURJUDPPHULVLQIDFW
UHVSRQVLEOHWKHFRPSDQ\ZLOOJRDKHDG
DQGLQIDFWWHUPLQDWHWKHHPSOR\HH

5LFN)RUHVWHU
&KLHI7HFKQRORJ\2I¿FHU

³5HPHPEHUWKHUHLVQR³,´LQ7($0´
³:ULWH\RXUFRGHDVLIWKHQH[WJX\
WRPDLQWDLQLWLVDKRPLFLGDOPDQLDF
ZKRNQRZVZKHUH\RXOLYH´
>1RWHWR+5ZHXVH³JX\´LQLWVQRQ
JHQGHUVSHFL¿FIRUP@
DUHVFULSWOHWV

EDG"
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

;KZQX\TM\[KWV[QLMZMLPIZUN]T'
)SITTRUE#OULDTHEREBEADOWNSIDETOPUTTINGALLTHIS*AVAINTOYOUR*30!FTER
ALLISNTTHATTHEWHOLEFRICKIN0/).4TOA*303OTHATYOUWRITEYOUR*AVAIN
WHATISESSENTIALLYAN(4-,PAGEASOPPOSEDTOWRITING(4-,INA*AVACLASS
3OMEPEOPLEBELIEVE/+TECHNICALLYALOTOFPEOPLEINCLUDINGTHE*30AND
3ERVLETSPECTEAMSTHATITSBADPRACTICETOPUTALLTHIS*AVAINTOYOUR*30
7HY)MAGINEYOUVEBEENHIREDTOBUILDABIGWEBSITE9OURTEAMINCLUDES
ASMALLHANDFULOFBACKEND*AVAPROGRAMMERSANDAHUGEGROUPOFhWEB
DESIGNERSvGRAPHICARTISTSANDPAGECREATORSWHOUSE$REAMWEAVERAND
0HOTOSHOPTOBUILDFABULOUSLOOKINGWEBPAGES4HESEARENOTPROGRAMMERS
WELLEXCEPTFORTHEONESWHOSTILLTHINK(4-,IShCODINGv
'R<28
NQRZ-DYD"
'XGHGR,/22.OLNH
VRPHRQHZKRZRXOGZULWH
FRGH",·PDKLJKSDLG:HE
'HVLJQHU

'(6,*1(5,·PDQ
$57,67QRWDFRGHU
$VSLULQJDFWRUVZRUNLQJDVZHEGHVLJQHUV
ZKLOHZDLWLQJIRUWKHLUELJVKRZEL]EUHDN
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
7ZRTXHVWLRQV³:+<DUH
\RXPDNLQJXVOHDUQLWDQG:+$7LV
WKHDOWHUQDWLYH":KDWWKHIHOVH
,6WKHUHEHVLGHV+70/LI\RXFDQ·W
SXWVFULSWOHWVGHFODUDWLRQVDQG
H[SUHVVLRQVLQ\RXU-63"
<PMZMLQLV¼\][ML\W*-IVIT\MZVI\Q^M
4HATMEANSTHEREAREALREADYMOUNTAINSOF*30lLESBRIMMINGWITH
*AVACODESTUCKINEVERYCONCEIVABLESPOTINTHEPAGENESTLED
BETWEENSCRIPTLETEXPRESSIONANDDECLARATIONTAGS)TSOUTTHERE
ANDTHEREISNTANYTHINGANYONECANDOTOCHANGETHEPAST3O
THATMEANSYOUVEGOTTOKNOWHOWTOREADANDUNDERSTANDTHESE
ELEMENTSANDHOWTOMAINTAINPAGESWRITTENWITHTHEMUNLESS
YOUREGIVENTHECHANCETOMASSIVELYREFACTORTHEAPPS*30S
3ECRETLYWETHINKTHERESSTILLAPLACEFORSOMEOFTHISNOTHING

BEATSALITTLE*AVAINA*30FORQUICKLYTESTINGSOMETHINGOUTONYOUR
SERVER"UTFORTHEMOSTPARTYOUDONTWANTTOUSETHISFORREAL
PRODUCTIONPAGES
4HEREASONTHISISALLONTHEEXAMISBECAUSETHEALTERNATIVESARE
STILLFAIRLYNEWSOMOSTOFTHEPAGESOUTTHERETODAYARESTILLhOLD
SCHOOLv&ORTHETIMEBEINGYOUSTILLHAVETOBEABLETOWORKWITHIT!T
SOMEPOINTWHENTHENEW*AVAFREETECHNIQUESHITCRITICALMASSTHE
OBJECTIVESFROMTHISCHAPTERWILLPROBABLYDROPOFFTHEEXAMAND
WELLALLBREATHEACOLLECTIVESIGHATTHEDEATHOF*AVAIN*30S
"UTTODAYISNOTTHATDAY
1RWHWRSDUHQWVDQGWHDFKHUVWKHIRXUOHW
WHUZRUGLPSOLHGLQWKLVWKRXJKWEXEEOHWKDW
VWDUWVZLWK´IµIROORZHGE\WKUHHDVWHULVNV
LV127ZKDW\RXWKLQN,WZDVMXVWDZRUG
WKDWZHIRXQGWRRIXQQ\WRLQFOXGHZLWKRXW
GLVWUDFWLQJWKHUHDGHUVRZHEOHHSHGLWRXW
%HFDXVHLW·VIXQQ\1RWEDG
VFULSWLQJLVRXWWKHUH
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH


-4"\PMIV[_MZ\W_MTT
M^MZa\PQVO

/RALMOSTEVERYTHING"UTCERTAINLYANANSWERTOTWOBIG
COMPLAINTSABOUTPUTTINGACTUAL*AVAINTOA*30
7EBPAGEDESIGNERSSHOULDNTHAVETOKNOW*AVA
*AVACODEINA*30ISHARDTOCHANGEANDMAINTAIN
%,STANDSFORh%XPRESSION,ANGUAGEvANDITBECAMEOFlCIALLY
PARTOFTHESPECBEGINNINGWITH*30SPEC%,ISNEARLY
ALWAYSAMUCHSIMPLERWAYTODOSOMEOFTHETHINGSYOUD
NORMALLYDOWITHSCRIPTLETSANDEXPRESSIONS
/FCOURSERIGHTNOWYOURETHINKINGh"UTIF)WANTMY*30
TOUSECUSTOMMETHODSHOWCAN)DECLAREANDWRITETHOSE
METHODSIF)CANTUSE*AVAv
!HHHHWRITINGTHEACTUALFUNCTIONALITYMETHODCODEISNOT
THEPURPOSEOF%,4HEPURPOSEOF%,ISTOOFFERASIMPLERWAY
TOINVOKE*AVACODEBUTTHECODEITSELFBELONGSSOMEWHEREELSE
4HATMEANSINAREGULAROLD*AVACLASSTHATSEITHERA*AVA"EAN
ACLASSWITHSTATICMETHODSORSOMETHINGCALLEDA4AG(ANDLER
)NOTHERWORDSYOUDONTWRITEMETHODCODEINTOYOUR*30
WHENYOUREFOLLOWINGTODAYS"EST0RACTICES9OUWRITETHE*AVA
METHODSOMEWHEREELSEANDCALLITUSING%,
2KLIRQO\WKHUHZHUHDZD\
LQD-63WRXVHVLPSOHWDJV
WKDWFDXVH-DYDPHWKRGVWRUXQ
ZLWKRXWKDYLQJWRSXWDFWXDO-DYD
FRGHLQWRWKHSDJH
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:

O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
;VMISXMMSI\-4
4HEENTIRENEXTCHAPTERISON%,SOWEWONTGOINTODETAILSHERE
4HEONLYREASONWERECOVERINGITISBECAUSEITSYETANOTHERKIND
OFELEMENTWITHITSOWNSYNTAXTHATGOESINA*30ANDTHEEXAM
OBJECTIVESFORTHISCHAPTERINCLUDERECOGNIZINGEVERYTHINGTHATCAN
GOINTOA*30
3OHDVHFRQWDFW^DSSOLFDWLRQ6FRSHPDLO`
7KLV(/H[SUHVVLRQ
3OHDVHFRQWDFW DSSOLFDWLRQJHW$WWULEXWH³PDLO´!
,VWKHVDPHDVWKLV-DYDH[SUHVVLRQ
$Q(/H[SUHVVLRQ$/:$<6
ORRNVOLNHWKLV^VRPHWKLQJ`
,QRWKHUZRUGVWKHH[SUHVVLRQ
LV$/:$<6HQFORVHGLQFXUO\
EUDFHVDQGSUH¿[HGZLWKD
GROODUVLJQ
WKHUH DUH QR
'
XPE 4XHVWLRQV
4

.OTTOBEALLNEGATIVEBUT)MNOTSURE)SEEANEARTHSHATTERING

DIFFERENCEBETWEENTHE%,ANDTHE*AVAEXPRESSION3UREITSALITTLE
SHORTERBUTISTHATWORTHAWHOLENEWSCRIPTINGLANGUAGEAND*30
CODINGAPPROACH
$
9OU3/HAVENTSEENTHEFULLBENEFITOF%,YET4HEDIFFERENCES
WILLBECOMEOBVIOUSINTHENEXTCHAPTERWHENWEDIVEIN"UTYOUMUST
REMEMBERTHATTOA*AVAPROGRAMMER%,IS./4NECCESSARILYADRAMATIC
DEVELOPMENTADVANTAGE)NFACTTOA*AVAPROGRAMMERITSIMPLYMEANS
hONEMORETHINGWITHITSOWNSYNTAXANDEVERYTHINGTOLEARNWHENHEY)
ALREADY+./7*AVAv
"UTITSNOTALWAYSABOUTYOU%,ISMUCHEASIERFORANON*AVAPROGRAMMER
TOLEARNANDGETUPTOSPEEDIN!NDFORA*AVAPROGRAMMERITISSTILLMUCH
EASIERTOMAINTAINASCRIPTLESSPAGE
9ESITSSTILLSOMETHINGTOLEARN)TDOESNTLETWEBPAGEDESIGNERS
COMPLETELYOFFTHEHOOKBUTYOULLSOONSEETHATITSMOREINTUITIVEAND
NATURALFORAWEBDESIGNERTOUSE%,&ORNOWINTHISCHAPTERYOUSIMPLY
NEEDTOBEABLETORECOGNIZE%,WHENYOUSEEIT!NDDONTWORRYATTHIS
POINTABOUTRECOGNIZINGWHETHERTHEEXPRESSIONITSELFISVALIDALLWECARE
ABOUTNOWISTHATYOUCANPICKOUTAN%,EXPRESSIONINA*30PAGE
¿UVWORRNDW
(/
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

XVLQJ-63
\RXDUHKHUH

$QGMXVW+2:GR\RXH[SHFW
PHWRJHWP\SURJUDPPHUVWR
VWRSXVLQJVFULSWLQJHOHPHQWV
LQWKHLU-63V"
(DV\³\RX
FDQ
SXWDQ
HOHPHQWLQWKH''WKDW
GLVDEOHVDOOVFULSWLQJ
HOHPHQWV
=[QVO$[KZQX\QVOQV^ITQL&
)TSSIMPLEYOUCANMAKEITINVALIDFORA
*30TOHAVESCRIPTINGELEMENTSSCRIPTLETS
*AVAEXPRESSIONSORDECLARATIONSBY
PUTTINGASCRIPTINGINVALIDTAGINTHE$$
ZHEDSS!

MVSFRQ¿J!
MVSSURSHUW\JURXS!
XUOSDWWHUQ!MVSXUOSDWWHUQ!

VFULSWLQJLQYDOLG!
WUXH
VFULSWLQJLQYDOLG!

MVSSURSHUW\JURXS!
MVSFRQ¿J!


ZHEDSS!
This disables scripting elements
for ALL JSPs in the app
(because we used the wildcard
*.jsp as the URL pattern.)
7ATCHOUTYOUMIGHTHAVESEENOTHERBOOKS
ORARTICLESSHOWAPAGEDIRECTIVETHATDISABLES
SCRIPTING)NADRAFTVERSIONOFTHESPEC
THEREWASAPAGEDIRECTIVEATTRIBUTE
 PAGEIS3CRIPTING%NABLEDvFALSEv
BUTITWASREMOVEDFROMTHElNALSPEC
4HEONLYWAYTOINVALIDATESCRIPTINGNOWIS
THROUGHTHESCRIPTINGINVALID$$TAG
This does not work!
The isScriptingEnabled
attribute is no longer in
the JSP spec!
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
AW]KIVKPWW[M\WQOVWZM-4

9ES%,ISAGOODTHINGTHATSGOINGTOSAVETHEWORLDASWEKNOWIT"UTSOMETIMES
YOUMIGHTWANTTODISABLEIT7HY
4HINKBACKTOWHENTHEASSERTKEYWORDWASADDEDTOTHE*AVALANGUAGEWITHVERSION
3UDDENLYTHEFORMERLYUNRESERVEDANDPERFECTLYLEGALIDENTIlERhASSERTvMEANT
SOMETHINGTOTHECOMPILER3OIFYOUHADSAYAVARIABLENAMEDASSERTYOUWERE
SCREWED%XCEPTTHAT*3%VERSIONCAMEWITHASSERTIONSDISABLEDBYDEFAULT)FYOU
KNEWYOUWEREWRITINGORRECOMPILINGCODETHATDIDNTUSEASSERTASANIDENTIlER
THENYOUCOULDCHOOSETOENABLEASSERTIONS
3OITSKINDOFTHESAMETHINGWITHDISABLING%,IFYOUHAPPENEDTOHAVETEMPLATE
TEXTPLAINOLD(4-,ORTEXTINYOUR*30THATINCLUDEDSOMETHINGTHATLOOKEDLIKE
%,[SOMETHING]YOUDBEIN"IG4ROUBLEIFYOUCOULDNTTELLTHE#ONTAINERTOJUST
IGNOREANYTHINGTHATAPPEARSTOBE%,ANDINSTEADTREATITLIKEANYOTHERUNPROCESSED
TEXT%XCEPTTHERESONEBIGDIFFERENCEBETWEEN%,ANDASSERTIONS
%LISENABLEDBYDEFAULT
)FYOUWANT%,LOOKINGTHINGSINYOUR*30TOBEIGNOREDYOUHAVETOSAYSO
EXPLICITLYEITHERTHROUGHAPAGEDIRECTIVEORA$$ELEMENT
ZHEDSS!

MVSFRQ¿J!
MVSSURSHUW\JURXS!
XUOSDWWHUQ!MVSXUOSDWWHUQ!

HOLJQRUHG!
WUXH
HOLJQRUHG!

MVSSURSHUW\JURXS!
MVSFRQ¿J!

ZHEDSS!

3XWWLQJHOLJQRUHG!LQWKH''
8VLQJWKHLV(/,JQRUHGSDJH
GLUHFWLYHDWWULEXWH
#SDJHLV(/,JQRUHG ´WUXH´!

,IWKHUH¶VDFRQÀLFWEHWZHHQWKH
HOLJQRUHG!VHWWLQJLQWKH''DQG
WKHLV(/,JQRUHGSDJHGLUHFWLYHDWWUL
EXWHWKHGLUHFWLYHDOZD\VZLQV7KDW
OHWV\RXVSHFLI\WKHGHIDXOWEHKDYLRU
LQWKH''EXWRYHUULGHLWIRUDVSHFL¿F
SDJHXVLQJDSDJHGLUHFWLYH
7KHSDJHGLUHFWLYH
WDNHVSULRULW\RYHU
WKH''VHWWLQJ

7KH''WDJLVHOLJQRUHG!VRRQHPLJKW
UHDVRQDEO\WKLQNWKDWWKHSDJHGLUHFWLYH
DWWULEXWHZRXOGEHRKPD\EHHO,JQRUHG"
%XWQRRQHZRXOGEHZURQJLIRQHMXPSHG
WRWKHQDWXUDOFRQFOXVLRQ7KH''DQG
GLUHFWLYHIRULJQRULQJ(/GRQRWPDWFK
'RQ¶WEHIRROHGE\LVHOLJQRUHG!
:DWFKRXWIRU
WKHQDPLQJ
LQFRQVLVWHQF\
The page directive attribute starts
with ÒisÓ, but the DD tag doesnÕt!
LJQRULQJ(/
Chapter 7. Being a JSP

Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

*]\_IQ\\PMZM¼[[\QTT
IVW\PMZ
2;8
MTMUMV\_MPI^MV¼\[MMV"
IK\QWV[
3OFARYOUVESEENlVEDIFFERENTTYPESOFELEMENTSTHATCANAPPEARINA*30
SCRIPTLETSDIRECTIVESDECLARATIONS*AVAEXPRESSIONSAND%,EXPRESSIONS
"UTWEHAVENTSEENACTIONS4HEYCOMEINTWOmAVORSSTANDARDANDNOT
MVSLQFOXGHSDJH ´ZLFNHG)RRWHUMVS´!
6WDQGDUG$FWLRQ
FVHWYDU ´UDWH´YDOXH ´´!
2WKHU$FWLRQ
!LTHOUGHTHATSMISLEADINGBECAUSETHEREARESOMEACTIONSTHATARENT
CONSIDEREDSTANDARDACTIONSBUTWHICHARESTILLPARTOFANOWSTANDARD
LIBRARY)NOTHERWORDSYOULLLATERLEARNTHATSOMEOFTHENONSTANDARD
THEOBJECTIVESREFERTOTHEMASCUSTOMACTIONSARESTANDARDBUTYET
THEYSTILLARENTCONSIDEREDhSTANDARDACTIONSv9ESTHATSRIGHTTHEYRE
STANDARDIZEDNONSTANDARDCUSTOMACTIONS$OESNTTHATJUSTCLEARITRIGHT
UPFORYOU

)NALATERCHAPTERWHENWEGETTOhUSINGTAGSvWELLHAVEASLIGHTLYRICHER
VOCABULARYWITHWHICHTOTALKABOUTTHISINMOREDETAILSORELAX&ORNOW
ALLWECAREABOUTISRECOGNIZINGANACTIONWHENYOUSEEITINA*30
6KDUSHQ \RXU SHQFLO
/RRNDWWKHV\QWD[IRUDQDFWLRQDQGFRPSDUHLWWRWKHV\QWD[IRUWKHRWKHU
NLQGVRI-63HOHPHQWV7KHQDQVZHUWKLV
:KDWDUHWKHGLIIHUHQFHVEHWZHHQDQDFWLRQHOHPHQWDQGDVFULSWOHW"
+RZZLOO\RXUHFRJQL]HDQDFWLRQZKHQ\RXVHHLW"
For now, donÕt worry about
what these do or how they work,
just recognize an action when
you see the syntax in a JSP.
Later, weÕll go into the details.
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU

7KLQNDERXWZKDWKDSSHQVZKHQHDFKRI
WKHVHVHWWLQJVRUFRPELQDWLRQRIVHWWLQJV
RFFXUV<RX·OOVHHWKHDQVZHUVZKHQ\RX
WXUQWKHSDJHVRGRWKLVRQH12:
(YDOXDWLRQ0DWUL[

XQVSHFLILHG XQVSHFLILHG
IDOVH XQVSHFLILHG
WUXH XQVSHFLILHG
IDOVH IDOVH
IDOVH WUXH
WUXH IDOVH
''FRQÀJXUDWLRQ
HOLJQRUHG!
SDJHGLUHFWLYH
LV(/,JQRUHG
HYDOXDWHG LJQRUHG
3ODFHDFKHFNPDUNLQWKHHYDOXDWHGFROXPQLIWKH
VHWWLQJVZRXOGFDXVHWKH(/H[SUHVVLRQVWREH
HYDOXDWHG25SODFHDFKHFNPDUNLQWKHLJQRUHG
FROXPQLI(/ZLOOEHWUHDWHGOLNHRWKHUWHPSODWHWH[W
1RURZZLOOKDYHWZRFKHFNPDUNVRIFRXUVH
(/(YDOXDWLRQ

XQVSHFLILHG
WUXH
IDOVH
''FRQÀJXUDWLRQ
VFULSWLQJLQYDOLG!
HYDOXDWHG LJQRUHG
6FULSWLQJYDOLGLW\
([HUFLVH
HYDOXDWLRQH[HUFLVH
3ODFHDFKHFNPDUNLQWKHHYDOXDWHGFROXPQLIWKHVHWWLQJV
ZRXOGFDXVHWKHVFULSWLQJH[SUHVVLRQVWREHHYDOXDWHG
25SODFHDFKHFNPDUNLQWKHLJQRUHGFROXPQLIVFULSWLQJ

ZLOOEHWUHDWHGOLNHRWKHUWHPSODWHWH[W
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH

-63(OHPHQW0DJQHWV
0DWFKWKH-63HOHPHQWZLWKLWVODEHOE\SODFLQJWKH-63VQLSSHWLQ
WKHER[ZLWKWKHODEHOUHSUHVHQWLQJWKDWHOHPHQWW\SH5HPHPEHU
\RX·OOKDYH'UDJDQG'URSTXHVWLRQVRQWKHUHDOH[DPVLPLODUWR
WKLVH[HUFLVHVRGRQ·WVNLSLW
GLUHFWLYH
GHFODUDWLRQ
(/H[SUHVVLRQ
VFULSWOHW
H[SUHVVLRQ
DFWLRQ
#SDJHLPSRUW ´MDYDXWLO´!
LQW\ !
HPDLO^DSSOLFDWLRQ6FRSHPDLO`
)ORDWRQH QHZ)ORDW!
 SDJH&RQWH[WJHW$WWULEXWH³IRR´!
MVSLQFOXGH¿OH ´IRRKWPO´!

-63HOHPHQWW\SH
-63VQLSSHW
Drag these over and
drop them onto the
matching label.
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

FKDSWHU
SXEOLF¿QDOFODVV%DVLF&RXQWHUBMVSH[WHQGVRUJDSDFKHMDVSHUUXQWLPH+WWS-VS%DVH
LPSOHPHQWVRUJDSDFKHMDVSHUUXQWLPH-VS6RXUFH'HSHQGHQW^

SXEOLFYRLGBMVS6HUYLFH+WWS6HUYOHW5HTXHVWUHTXHVW+WWS6HUYOHW5HVSRQVHUHVSRQVH
WKURZVMDYDLR,2([FHSWLRQ6HUYOHW([FHSWLRQ^





`
`
-63(OHPHQW0DJQHWVWKH6HTXHO
<RXNQRZZKDWWKH\·UHFDOOHGEXWGR\RXUHPHPEHUZKHUHWKH\JRLQWKH

JHQHUDWHGVHUYOHW"2IFRXUVH\RXGR%XWWKLVLVMXVWDOLWWOHUHLQIRUFHPHQWSUDFWLFH
EHIRUHZHPRYHRQWRDGLIIHUHQWFKDSWHUDQGWRSLF
3XWWKHHOHPHQWLQWKHER[FRUUHVSRQGLQJWRZKHUHWKDWHOHPHQW·VJHQHUDWHGFRGH
ZLOOJRLQWKHVHUYOHWFODVVILOH1RWHWKDWWKHPDJQHWLWVHOIGRHVQRWUHSUHVHQWWKH
$&78$/FRGHWKDWZLOOEHJHQHUDWHG
 UHTXHVWJHW$WWULEXWH³IRR´!
#SDJHLPSRUW ´MDYDXWLO´!
LQW\ !
)ORDWRQH QHZ)ORDW!
HPDLO^DSSOLFDWLRQ6FRSHPDLO`
-63HOHPHQWVH[HUFLVH
The order of these three
magnets does not matter.
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.
XVLQJ-63
\RXDUHKHUH


(YDOXDWLRQ0DWUL[
$16:(56
XQVSHFLILHG XQVSHFLILHG
IDOVH XQVSHFLILHG

WUXH XQVSHFLILHG
IDOVH IDOVH
IDOVH WUXH
WUXH IDOVH
''FRQÀJXUDWLRQ
HOLJQRUHG!
SDJHGLUHFWLYH
LV(/,JQRUHG
HYDOXDWHG LJQRUHG
(/(YDOXDWLRQ

XQVSHFLILHG
WUXH
IDOVH
''FRQÀJXUDWLRQ
VFULSWLQJLQYDOLG!
HYDOXDWHG LJQRUHG
6FULSWLQJYDOLGLW\
([HUFLVH
Chapter 7. Being a JSP
Chapter 7. Being a JSP
Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham ISBN: 0596005407 Publisher:
O'Reilly
Prepared for Augusto Jaramillo Forcada, Safari ID:
Print Publication Date: 8/1/2004 User number: 729515 Copyright 2007, Safari Books Online, LLC.
This PDF is exclusively for your use in accordance with the Safari Terms of Service. No part of it may be reproduced or transmitted in any form by any means without the prior
written permission for reprints and excerpts from the publisher. Redistribution or other use that violates the fair use priviledge under U.S. copyright laws (see 17 USC107) or that
otherwise violates the Safari Terms of Service is strictly prohibited.

×