XVLQJ-63
\RXDUHKHUH
&RGH0DJQHWV
$QVZHUV
LPSRUW
VHVVLRQ
RXW
LPSRUWMDYDXWLO
#
^!
`
KWPO!ERG\!
$UUD\/LVW
UHTXHVW
SDJH
$UUD\/LVW
VHVVLRQ
JHW3DUDPHWHU´QDPHVµ
JHW$WWULEXWH³QDPHV´
ZKLOH
JHW$WWULEXWH´KREE\µ
DO
UHTXHVW
!
LWKDV1H[W
LPSRUW ´MDYDXWLO´
JHW3DUDPHWHU³KREE\´
,I\RXUDQVZHUORRNVDOLWWOHGLIIHUHQWEXW\RX
VWLOOWKLQNLWVKRXOGZRUN³WU\LW<RX·OOKDYHWR
PDNHWKHVHUYOHWWKDWWDNHVWKHIRUPUHTXHVW
VHWVDQDWWULEXWHDQGIRUZDUGVGLVSDWFKHV
WKHUHTXHVWWRWKH-63
!
7KHIULHQGVZKRVKDUH\RXUKREE\RI
DUHEU!
UHTXHVW
LWQH[W
!
,WHUDWRULW DOLWHUDWRU
!
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-ATHRANDOM
Rhv
R-ATHRANDOM
R3TRINGShFOOv
RNEW3TRING;=
R
R
RFALSE
RNEW#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
9DOLGDQG,QYDOLG([SUHVVLRQV
YDOLGDQGLQYDOLGH[SUHVVLRQV
)KWUUMV\
9ESYOUCANPUTCOMMENTSINYOUR
*30)FYOUREA*AVAPROGRAMMERWITH
VERYLITTLE(4-,EXPERIENCEYOU
MIGHTlNDYOURSELFTYPING
THISISACOMMENT
WITHOUTTHINKINGTWICE"UTIFYOU
DOTHENUNLESSITSWITHINASCRIPTLET
ORDECLARATIONTAGYOULLENDUP
$)30,!9).'THATTOTHECLIENTASPART
OFTHERESPONSE)NOTHERWORDSTOTHE
#ONTAINERTHOSETWOSLASHESAREJUST
MORETEMPLATETEXTLIKEh(ELLOvOR
h%MAILISv
9OUCANPUTTWODIFFERENTTYPESOF
COMMENTSINA*30
+70/FRPPHQW!
7KH&RQWDLQHUMXVWSDVVHVWKLVVWUDLJKWRQ
WRWKHFOLHQWZKHUHWKHEURZVHULQWHUSUHWV
LWDVDFRPPHQW
-63FRPPHQW!
7KHVHDUHIRUWKHSDJHGHYHORSHUVDQG
MXVWOLNH-DYDFRPPHQWVLQD-DYDVRXUFH
ILOHWKH\·UHVWULSSHGRXWRIWKHWUDQVODWHG
SDJH,I\RX·UHW\SLQJD-63DQGZDQWWR
SXWLQFRPPHQWVDERXWZKDW\RX·UHGRLQJ
WKHZD\\RX·GXVHFRPPHQWVLQD-DYD
VRXUFHILOHXVHD-63FRPPHQW
,I\RXZDQWFRPPHQWVWRVWD\DVSDUW
RIWKH+70/UHVSRQVHWRWKHFOLHQW
DOWKRXJKWKHEURZVHUZLOOKLGHWKHPIURP
WKHFOLHQW·VYLHZXVHDQ+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
\RXDUHKHUH
)81NWZ\PMOMVMZI\ML[MZ^TM\
4HE#ONTAINERGENERATESACLASSFROMYOUR*30THAT
IMPLEMENTSTHE(TTP*SP0AGEINTERFACE4HISISTHEONLY
PARTOFTHEGENERATEDSERVLETS!0)THATYOUNEEDTO
KNOW9OUDONTCARETHATIN4OMCATFOREXAMPLEYOUR
GENERATEDSERVLETEXTENDS
RUJDSDFKHMDVSHUUXQWLPH+WWS-VS%DVH
!LLYOUNEEDTOKNOWABOUTARETHETHREEKEYMETHODS
MVS,QLW
MVS'HVWUR\
LQWHUIDFH!!
MDYD[VHUYOHWMVS-VS3DJH
BMVS6HUYLFH+WWS6HUYOHW5HTXHVW+WWS6HUYOHW5HVSRQVH
LQWHUIDFH!!
MDYD[VHUYOHWMVS+WWS-VS3DJH
MVS,QLW
7KLVPHWKRGLVFDOOHGIURPWKHLQLWPHWKRG
<RXFDQRYHUULGHWKLVPHWKRG&DQ\RXILJXUHRXWKRZ"
MVS'HVWUR\
7KLVPHWKRGLVFDOOHGIURPWKHVHUYOHW·VGHVWUR\PHWKRG
<RXFDQRYHUULGHWKLVPHWKRGDVZHOO
BMVS6HUYLFH
7KLVPHWKRGLVFDOOHGIURPWKHVHUYOHW·VVHUYLFHPHWKRG
ZKLFKPHDQVLWUXQVLQDVHSDUDWHWKUHDGIRUHDFKUHTXHVW
7KH&RQWDLQHUSDVVHVWKH5HTXHVWDQG5HVSRQVHREMHFWVWR
WKLVPHWKRG
<RXFDQ·WRYHUULGHWKLVPHWKRG<RXFDQ·WGR$1<7+,1*ZLWK
WKLVPHWKRG\RXUVHOIH[FHSWZULWHFRGHWKDWJRHVLQVLGHLW
DQGLW·VXSWRWKH&RQWDLQHUYHQGRUWRWDNH\RXU-63FRGH
DQGIDVKLRQWKHBMVS6HUYLFHPHWKRGWKDWXVHVLW
You can override these.
You CANNOT override this!
,W¶V127LQIURQWRIWKHRWKHUWZRPHWKRGV
MVS,QLWDQGMVS'HVWUR\7KLQNRILWWKLV
ZD\WKHXQGHUVFRUHLQIURQWRIWKHPHWKRG
PHDQV³GRQ¶WWRXFK´
6RQRXQGHUVFRUHLQIURQWRIWKHQDPH
PHDQV\RXFDQRYHUULGH%XWLIWKHUH,6
DQXQGHUVFRUHLQIURQWRIWKHPHWKRG
QDPH\RXPXVW127WU\WRRYHUULGHLW
1RWHWKHXQGHUVFRUH
DWWKHIURQWRIWKH
B MVS6HUYLFHPHWKRG
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
4QNMKaKTMWNI2;8
9OUWRITETHEJSPlLE
4HE#ONTAINERWRITESTHEJAVAlLEFORTHESERVLETYOUR*30BECOMES
:HE&RQWDLQHU
.LPZULWHVDMVSÀOH
DQGGHSOR\VLWDV
SDUWRIDZHEDSS
7KH&RQWDLQHU´UHDGVµWKHZHE[PO''IRU
WKLVDSSEXWGRHVQ·WGRDQ\WKLQJHOVHZLWKWKH
MVSÀOHXQWLOWKHÀUVWWLPHLW·VUHTXHVWHG
"[POYHU
VLRQ ´´
HQFRGLQJ
´87)´"!
'2&7<3(
ZHE[PO
:HE&RQWDLQHU
7KHFOLHQWKLWVDOLQN
WKDWDVNVIRUWKHMVS
7KH&RQWDLQHUWULHVWR75$16/$7(WKHMVS
LQWRMDYDVRXUFHFRGHIRUDVHUYOHWFODVV
0\-63BMVSFODVV
SDFNDJHRUJ
DSDFKH
LPSRUW
MD
YD[VHUYOHW
+WWS6HUY
OHW
0\-63BMVSMDYD
KWPO!
ERG\!
LQW[!
+HOOR
[!
ERG\!
KWPO!
0\-63MVS
WUDQVODWH
UHTXHVW
JHQHUDWH
:HE&RQWDLQHU
7KH&RQWDLQHUWULHVWR&203,/(WKH
VHUYOHWMDYDVRXUFHLQWRDFODVVÀOH
FRPSLOH
JHQHUDWH
JSP syntax errors are
caught in this phase.
Java language/syntax
errors are caught here.
-63OLIHF\FOH
KWPO!
ERG\!
LQW[!
+HOOR
[!
ERG\!
KWPO!
0\-63MVS
ItÕs just sitting here on
the server waiting for a
client to request it.
SDFNDJHRUJ
DSDFKH
LPSRUW
MD
YD[VHUYOHW
+WWS6HUY
OHW
0\-63BMVSMDYD
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
\RXDUHKHUH
:HE&RQWDLQHU
7KH&RQWDLQHU/2$'6WKH
QHZO\JHQHUDWHGVHUYOHWFODVV
:HE&RQWDLQHU
7KH&RQWDLQHULQVWDQWLDWHVWKH
VHUYOHWDQGFDXVHVWKHVHUYOHW·V
MVS,QLWPHWKRGWRUXQ
MVS,QLW
7KH&RQWDLQHUFUHDWHVDQHZWKUHDGWR
KDQGOHWKLVFOLHQW·VUHTXHVWDQGWKH
VHUYOHW·VBMVS6HUYLFHPHWKRGUXQV
:HE&RQWDLQHU
0\-63BMVSFODVV
ORDG
0\-63B MVS
0
\
-
6
3
B
M
V
S
EHFRPHV
7KHREMHFWLVQRZDIXOOÁHGJHGVHUYOHW
UHDG\WRDFFHSWFOLHQWUHTXHVWV
0\-63B MVS
BMVS6HUYLFH
(YHU\WKLQJWKDWKDSSHQVDIWHU
WKLVLVMXVWSODLQROGVHUYOHW
UHTXHVWKDQGOLQJ
(YHQWXDOO\WKHVHUYOHWVHQGVD
UHVSRQVHEDFNWRWKHFOLHQWRU
IRUZDUGVWKHUHTXHVWWRDQRWKHU
ZHEDSSFRPSRQHQW
2;8TQNMKaKTMKWV\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\QWVIVLKWUXQTI\QWV
PIXXMV[WVTa76+-
7HENYOUDEPLOYAWEBAPPWITHA*30THE
WHOLETRANSLATIONANDCOMPILATIONSTEPHAPPENS
ONLYONCEINTHE*30SLIFE/NCEITSBEEN
TRANSLATEDANDCOMPILEDITSJUSTLIKEANYOTHER
SERVLET!NDJUSTLIKEANYOTHERSERVLETONCETHAT
SERVLETHASBEENLOADEDANDINITIALIZEDTHEONLY
THINGTHATHAPPENSATREQUESTTIMEISCREATIONOR
ALLOCATIONOFATHREADFORTHESERVICEMETHOD3O
THEPICTUREONTHEPREVIOUSTWOPAGESISFORONLY
THElRSTREQUEST
:RZ,DPWUXO\LPSUHVVHG,
ZRXOGQHYHUKDYHJXHVVHGWKDW
WKH\FRXOGPDNHUHTXHVWLQJD-63
WDNHMXVWDVPXFKRYHUKHDGDVFDOOLQJD
PHWKRGRQDQ(-%,·PWKLQNLQJWKHFOLHQW
KDVWRZDLWZKDW
ÀYHPLQXWHV
IRUDOO
WKDWWUDQVODWLQJFRPSLOLQJDQG
LQLWLDOL]LQJ"
4
/+SOTHATMEANSONLYTHElRSTCLIENTTOASK
FORTHE*30TAKESTHEBIGHIT"UTTHERE-534BEA
WAYTOCONlGURETHESERVERTOPRETRANSLATEAND
COMPILERIGHT
$
!LTHOUGHITSONLYTHEFIRSTCLIENTTHATHASTO
WAITMOST#ONTAINERVENDORS$/GIVEYOUAWAYTOASK
FORTHEWHOLETRANSLATIONCOMPILATIONTHINGTOHAPPEN
INADVANCESOTHATEVENTHEFIRSTREQUESTHAPPENSLIKE
ANYOTHERSERVLETREQUEST
"UTWATCHOUTITSVENDORDEPENDENTANDNOT
GUARANTEED4HERE)3AMENTIONINTHE*30SPEC*30
OFASUGGESTEDPROTOCOLFOR*30PRECOMPILATION
9OUMAKEAREQUESTFORTHE*30APPENDINGAQUERY
STRINGhJSP?PRECOMPILEvANDTHE#ONTAINERMIGHTIF
ITCHOOSESDOTHETRANSLATIONCOMPILATIONRIGHTTHEN
INSTEADOFWAITINGFORTHEFIRSTREALREQUEST
WUDQVODWLRQDQG
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
\RXDUHKHUH
,IWKH-63WXUQVLQWRD
VHUYOHW,ZRQGHULI,FDQ
FRQÀJXUHVHUYOHWLQLWSDUDPHWHUV
DQGZKLOH,·PDWLW,ZRQGHULI,FDQ
RYHUULGHWKHVHUYOHW·VLQLWPHWKRG
6KDUSHQ \RXU SHQFLO
7KLQNDERXWWKHVHTXHVWLRQV)OLSEDFNWKURXJK
HDUOLHUSDJHVDQGFKDSWHUVLI\RXQHHGWREXW
GRQ·WWXUQWKHSDJHXQWLO\RX·YHGRQHWKLV
<HV\RX&$1JHWVHUYOHWLQLWSDUDPHWHUVIURPD
VHUYOHWWKHTXHVWLRQVDUH
+RZZRXOG\RXUHWULHYHWKHPLQ\RXUFRGH"%LJ
KXJHJUDYHOKDXOLQJKLQWSUHWW\FORVHWRWKHVDPH
ZD\\RXUHWULHYHWKHPLQD´QRUPDOµVHUYOHW)URP
ZKLFKREMHFWGR\RXQRUPDOO\JHWVHUYOHWLQLWSDUDP
HWHUV",VWKDWREMHFWDYDLODEOHWR\RXU-63FRGH"
+RZZKHUHZRXOG\RXFRQILJXUHWKHVHUYOHWLQLW
SDUDPHWHUV"
6XSSRVH\RXGRZDQWWRRYHUULGHWKHLQLW
PHWKRGKRZZRXOG\RXGRLW",VWKHUHVRPHWKLQJ
HOVH\RXFDQGRWKDW·OOJLYH\RXWKHVDPHUHVXOW"
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\QITQbQVOaW]Z2;8
9OUCANDOSERVLETINITIALIZATIONSTUFFINYOUR*30BUTITSSLIGHTLY
DIFFERENTFROMWHATYOUDOINAREGULARSERVLET
2YHUULGLQJMVS,QLW
9ESITSTHATSIMPLE)FYOUIMPLEMENTAJSP)NITMETHODTHE#ONTAINERCALLSTHIS
METHODATTHEBEGINNINGOFTHISPAGESLIFEASASERVLET)TSCALLEDFROMTHESERVLETS
INITMETHODSOBYTHETIMETHISMETHODRUNSTHEREISA3ERVLET#ONlGAND
3ERVLET#ONTEXTAVAILABLETOTHESERVLET4HATMEANSYOUCANCALLGET3ERVLET#ONlG
ANDGET3ERVLET#ONTEXTFROMWITHINTHEJSP)NITMETHOD
4HISEXAMPLEUSESTHEJSP)NITMETHODTORETRIEVEASERVLETINITPARAMETER
CONlGUREDINTHE$$ANDUSESTHEVALUETOSETANAPPLICATIONSCOPEDATTRIBUTE
SXEOLFYRLG
MVS,QLW^
6HUYOHW&RQ¿JV&RQ¿J JHW6HUYOHW&RQ¿J
6WULQJHPDLO$GGU V&RQ¿JJHW,QLW3DUDPHWHU³HPDLO´
6HUYOHW&RQWH[WFW[ 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ÀJXULQJVHUYOHWLQLWSDUDPHWHUV
9OUCONlGURESERVLETINITPARAMSFORYOUR*30VIRTUALLYTHESAMEWAYYOU
CONlGURETHEMFORANORMALSERVLET4HEONLYDIFFERENCEISTHATYOUHAVE
TOADDAJSPlLEELEMENTWITHINTHESERVLETTAG
ZHEDSS!
VHUYOHW!
VHUYOHWQDPH!0\7HVW,QLWVHUYOHWQDPH!
MVS¿OH!7HVW,QLWMVSMVS¿OH!
LQLWSDUDP!
SDUDPQDPH!HPDLOSDUDPQDPH!
SDUDPYDOXH!LNLFNHGEXWW#ZLFNHGO\VPDUWFRPSDUDPYDOXH!
LQLWSDUDP!
VHUYOHW!
ZHEDSS!
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 Ó
RYHUULGLQJMVS,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
\RXDUHKHUH
)\\ZQJ]\M[QVI2;8
4HEEXAMPLEONTHEOPPOSITEPAGESHOWSTHE*30SETTINGANAPPLICATIONSCOPED
ATTRIBUTEUSINGAMETHODDECLARATIONTHATOVERRIDESJSP)NIT"UTMOSTOFTHE
TIMEYOULLBEUSINGONEOFTHEFOURIMPLICITOBJECTSTOGETANDSETATTRIBUTES
CORRESPONDINGTOTHEFOURATTRIBUTESCOPESAVAILABLEINA*30
9ESFOUR2EMEMBERINADDITIONTOTHESTANDARDSERVLETREQUESTSESSIONAND
APPLICATIONCONTEXTSCOPESA*30ADDSAFOURTHSCOPEPAGESCOPETHATYOUGET
FROMAPAGE#ONTEXTOBJECT
9OUUSUALLYWONTNEEDORCAREABOUTPAGESCOPEUNLESSYOUREDEVELOPING
CUSTOMTAGSSOWEWONTSAYANYMOREABOUTITUNTILTHECUSTOMTAGSCHAPTER
,QDVHUYOHW ,QD-63
XVLQJLPSOLFLWREMHFWV
$SSOLFDWLRQ
JHW6HUYOHW&RQWH[WVHW$WWULEXWH´IRRµEDU2EM DSSOLFDWLRQVHW$WWULEXWH´IRRµEDU2EM
5HTXHVW
UHTXHVWVHW$WWULEXWH´IRRµEDU2EM UHTXHVWVHW$WWULEXWH´IRRµEDU2EM
6HVVLRQ
UHTXHVWJHW6HVVLRQVHW$WWULEXWH´IRRµEDU2EM VHVVLRQVHW$WWULEXWH´IRRµEDU2EM
3DJH
'RHVQRWDSSO\
SDJH&RQWH[WVHW$WWULEXWH´IRRµEDU2EM
"UTTHISISNTTHEWHOLESTORY)NA*30THERESANOTHERWAYTOGETAND
SETATTRIBUTESATANYSCOPEUSINGONLYTHEPAGE#ONTEXTIMPLICITOBJECT
4URNTHEPAGEANDlNDOUTHOW
7KHQDPLQJFRQYHQWLRQPLJKWWULFN\RXLQWRWKLQNLQJWKDWDWWULEXWHVVWRUHG
LQWKH6HUYOHW&RQWH[WDUHFRQWH[WVFRSH%XWWKHUH¶VQRVXFKWKLQJ
5HPHPEHUZKHQ\RXVHH³&RQWH[W´WKLQN³DSSOLFDWLRQ´%XWWKHUH¶VDQ
LQFRQVLVWHQF\EHWZHHQWKHVHUYOHWDQG-63QDPHVXVHGWRJHWDSS
VFRSHGDWWULEXWHV²LQDVHUYOHW\RXVD\
JHW6HUYOHW&RQWH[WJHW$WWULEXWH³IRR´
EXWLQD-63\RXVD\
DSSOLFDWLRQJHW$WWULEXWH³IRR´
7KHUH·VQRVXFKWKLQJDV´FRQWH[WµVFRSH
HYHQWKRXJKDWWULEXWHVLQDSSOLFDWLRQVFRSH
DUHERXQGWRWKH6HUYOHW&RQWH[WREMHFW
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
=[QVO8IOM+WV\M`\NWZI\\ZQJ]\M[
9OUCANUSEA0AGE#ONTEXTREFERENCETOGETATTRIBUTES
FROMANYSCOPEINCLUDINGTHEPAGESCOPEFORATTRIBUTES
BOUNDTOTHE0AGE#ONTEXT
4HEMETHODSTHATWORKWITHOTHERSCOPESTAKEANINT
ARGUMENTTOINDICATETHESCOPE!LTHOUGHTHEATTRIBUTE
ACCESSMETHODSCOMEFROM*SP#ONTEXTYOULLlNDTHE
CONSTANTSFORTHESCOPESINSIDETHE0AGE#ONTEXTCLASS
JHW$WWULEXWH6WULQJQDPH
JHW$WWULEXWH6WULQJQDPHLQWVFRSH
JHW$WWULEXWH1DPHV,Q6FRSHLQWVFRSH
ILQG$WWULEXWH6WULQJQDPH
PRUHPHWKRGV
LQFOXGLQJVLPLODUPHWKRGVWR
VHWDQGUHPRYHDWWULEXWHVIURP
DQ\VFRSH
-VS&RQWH[W
$33/,&$7,21B6&23(
3$*(B6&23(
5(48(67B6&23(
6(66,21B6&23(
PRUHILHOGV
JHW5HTXHVW
JHW6HUYOHW&RQILJ
JHW6HUYOHW&RQWH[W
JHW6HVVLRQ
PRUHPHWKRGV
3DJH&RQWH[W
static Þ nal
Þ elds
methods that work
for ANY scope
methods to
get any implicit
object
SDJH&RQWH[WDQGDWWULEXWHV
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
\RXDUHKHUH
(PDLOLV
DSSOLFDWLRQJHW$WWULEXWH³PDLO´!
(PDLOLV
SDJH&RQWH[WJHW$WWULEXWH³PDLO´3DJH&RQWH[W$33/,&$7,21B6&23(!
8VLQJWKHSDJH&RQWH[WWRJHWDQ
DSSOLFDWLRQ
VFRSHGDWWULEXWH
6HWWLQJD
SDJH
VFRSHGDWWULEXWH
)ORDWRQH QHZ)ORDW!
SDJH&RQWH[WVHW$WWULEXWH³IRR´RQH!
8VLQJWKHSDJH&RQWH[WWRVHWD
VHVVLRQ
VFRSHGDWWULEXWH
)ORDWWZR QHZ)ORDW!
SDJH&RQWH[WVHW$WWULEXWH³IRR´WZR3DJH&RQWH[W6(66,21B6&23(!
7ITHINA*30THECODEABOVEISIDENTICALTO
*HWWLQJD
SDJH
VFRSHGDWWULEXWH
SDJH&RQWH[WJHW$WWULEXWH³IRR´!
8VLQJWKHSDJH&RQWH[WWRJHWD
VHVVLRQ
VFRSHGDWWULEXWH
SDJH&RQWH[WJHW$WWULEXWH³IRR´3DJH&RQWH[W6(66,21B6&23(!
7HICHISIDENTICALTO VHVVLRQJHW$WWULEXWH³IRR´!
-`IUXTM[][QVOXIOM+WV\M`\\W
OM\IVL[M\I\\ZQJ]\M[
7KHUHDUH7:2RYHUORDGHGJHW$WWULEXWH
PHWKRGV\RXFDQFDOORQSDJH&RQWH[W
DRQHDUJWKDWWDNHVD6WULQJDQGD
WZRDUJWKDWWDNHVD6WULQJDQGDQLQW
7KHRQHDUJYHUVLRQZRUNVMXVWOLNHDOO
WKHRWKHUV²LW¶VIRUDWWULEXWHVERXQG72
WKHSDJH&RQWH[WREMHFW%XWWKHWZRDUJ
YHUVLRQFDQEHXVHGWRJHWDQDWWULEXWH
IURP$1<RIWKHIRXUVFRSHV
SDJH&RQWH[W
JHW$WWULEXWH6WULQJ
LVIRUSDJHVFRSH
8VLQJWKHSDJH&RQWH[WWRÀQGDQDWWULEXWHZKHQ\RXGRQ·W
NQRZ
WKHVFRSH
SDJH&RQWH[W¿QG$WWULEXWH³IRR´!
7HEREDOESTHElND!TTRIBUTEMETHODLOOK)TLOOKSlRSTINTHEPAGECONTEXTSOIFTHERESAhFOOv
ATTRIBUTEWITHPAGECONTEXTSCOPETHENCALLINGlND!TTRIBUTE3TRINGNAMEONA0AGE#ONTEXTWORKS
JUSTLIKECALLINGGET!TTRIBUTE3TRINGNAMEONA0AGE#ONTEXT"UTIFTHERESNOhFOOvATTRIBUTETHE
METHODSTARTSLOOKINGINOTHERSCOPESFROMMOSTRESTRICTEDTOLEASTRESTRICTEDSCOPEINOTHERWORDS
lRSTREQUESTSCOPETHENSESSIONTHENlNALLYAPPLICATIONSCOPE4HElRSTONEITlNDSWITHTHATNAMEWINS
Þ 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¼ZMWV\PM[]JRMK\TM\¼[
\ITSUWZMIJW]\\PM\PZMM
LQZMK\Q^M[
7EALREADYLOOKEDATTHEDIRECTIVEUSEDFORGETTINGIMPORTSTATEMENTSINTO
THEGENERATEDSERVLETCLASSMADEFROMYOUR*304HATWASAPAGEDIRECTIVE
ONEOFTHETHREEDIRECTIVETYPESWITHANIMPORTATTRIBUTEONEOF
ATTRIBUTESOFTHEPAGEDIRECTIVE7ELLTAKEAQUICKLOOKNOWATTHEOTHERS
ALTHOUGHSOMEWONTBECOVEREDINDETAILUNTILLATERCHAPTERSANDSOME
WONTBECOVEREDINDETAILATALLINTHISBOOKBECAUSETHEYRERARELYUSED
4
)MCONFUSEDTHISPAGEHEADINGSAYShWHILEWEREONTHESUBJECTv
BUT)DONTSEEHOW
DIRECTIVES
HAVEANYTHINGTODOWITHPAGE#ONTEXTAND
ATTRIBUTES
$
4HEYDONTNOTREALLY7EJUSTSAIDTHATTOCOVERABADPATHETIC
NONEXISTENTTRANSITIONBETWEENTWOUNRELATEDTOPICS7EHOPEDNOBODYWOULD
NOTICEBUT./YOUJUSTCOULDNTLETITGOCOULDYOU
7KHSDJHGLUHFWLYH
$ElNESPAGESPECIlCPROPERTIESSUCHASCHARACTERENCODINGTHE
CONTENTTYPEFORTHISPAGESRESPONSEANDWHETHERTHISPAGESHOULD
HAVETHEIMPLICITSESSIONOBJECT!PAGEDIRECTIVECANUSEUPTO
THIRTEENDIFFERENTATTRIBUTESLIKETHEIMPORTATTRIBUTEALTHOUGH
ONLYFOURATTRIBUTESARECOVEREDONTHEEXAM
7KHWDJOLEGLUHFWLYH
$ElNESTAGLIBRARIESAVAILABLETOTHE*307EHAVENTTALKEDABOUT
USINGCUSTOMTAGSANDSTANDARDACTIONSYETSOTHISMIGHTNOTMAKE
ANYSENSEATTHISPOINT*USTGOWITHITFORNOWWEHAVETWOWHOLE
CHAPTERSONTAGLIBRARIESCOMINGUPSOON
7KHLQFOXGHGLUHFWLYH
$ElNESTEXTANDCODETHATGETSADDEDINTOTHECURRENTPAGE
ATTRANSLATIONTIME4HISLETSYOUBUILDREUSABLECHUNKSLIKEA
STANDARDPAGEHEADINGORNAVIGATIONBARTHATCANBEADDEDTO
EACHPAGEWITHOUTHAVINGTODUPLICATEALLTHATCODEINEACH*30
#SDJHLPSRUW ´IRR´VHVVLRQ ´IDOVH´!
#WDJOLEWDJGLU ´:(%,1)WDJVFRRO´SUH¿[ ´FRRO´!
#LQFOXGH¿OH ´ZLFNHG+HDGHUKWPO´!
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
\RXDUHKHUH
ODQJXDJH
'HILQHVWKHVFULSWLQJODQJXDJHXVHGLQVFULSWOHWVH[SUHVVLRQVDQGGHFODUDWLRQV5LJKWQRZWKHRQO\
SRVVLEOHYDOXHLV´MDYDµEXWWKHDWWULEXWHLVKHUHEHFDXVHLVQ·WLWMXVWOLNHWKRVHVSHFGHYHORSHUVWREH
WKLQNLQJRIWKHIXWXUHZKHQRWKHUODQJXDJHVPLJKWEHXVHG
)\\ZQJ]\M[\W\PM
XIOM
LQZMK\Q^M
H[WHQGV
LPSRUW
VHVVLRQ
EXIIHU
DXWR)OXVK
LV7KUHDG6DIH
LQIR
FRQWHQW7\SH
SDJH(QFRGLQJ
LV(/,JQRUHG
'HILQHVZKHWKHU(/H[SUHVVLRQVDUHLJQRUHGZKHQWKLVSDJHLVWUDQVODWHG:HKDYHQ·WWDONHGDERXW
(/\HWWKDW·VFRPLQJLQWKHQH[WFKDSWHU)RUQRZMXVWNQRZWKDW\RXPLJKWFKRRVHWRLJQRUH(/
V\QWD[LQ\RXUSDJHDQGWKLVLVRQHRIWKHWZRZD\V\RXFDQWHOOWKH&RQWDLQHU
'HILQHVWKHFKDUDFWHUHQFRGLQJIRUWKH-637KHGHIDXOWLV´,62µXQOHVVWKHFRQWHQW7\SH
DWWULEXWHDOUHDG\GHILQHVDFKDUDFWHUHQFRGLQJRUWKHSDJHXVHV;0/'RFXPHQWV\QWD[
'HILQHVWKH0,0(W\SHDQGRSWLRQDOFKDUDFWHUHQFRGLQJIRUWKH-63UHVSRQVH<RXNQRZWKHGHIDXOW
LV(UURU3DJH
HUURU3DJH
'HILQHVD85/WRWKHUHVRXUFHWRZKLFKXQFDXJKW7KURZDEOHVVKRXOGEHVHQW,I\RXGHILQHD-63
KHUHWKHQWKDW-63ZLOOKDYHDQLV(UURU3DJH µWUXHµDWWULEXWHLQLWVSDJHGLUHFWLYH
'HILQHVZKHWKHUWKHFXUUHQWSDJHUHSUHVHQWVDQRWKHU-63·VHUURUSDJH7KHGHIDXOWYDOXHLV´IDOVHµ
EXWLILW·VWUXHWKHSDJHKDVDFFHVVWRWKHLPSOLFLWH[FHSWLRQREMHFWZKLFKLVDUHIHUHQFHWRWKH
RIIHQGLQJ7KURZDEOH,IIDOVHWKHLPSOLFLWH[FHSWLRQREMHFWLVQRWDYDLODEOHWRWKH-63
'HILQHVD6WULQJWKDWJHWVSXWLQWRWKHWUDQVODWHGSDJHMXVWVRWKDW\RXFDQJHWLWXVLQJWKHJHQHUDWHG
VHUYOHW·VLQKHULWHGJHW6HUYOHW,QIRPHWKRG
'HILQHVZKHWKHUWKHJHQHUDWHGVHUYOHWQHHGVWRLPSOHPHQWWKH6LQJOH7KUHDG0RGHOZKLFKDV\RX
NQRZLVD6SHFWDFXODUO\%DG7KLQJ7KHGHIDXOWYDOXHLVµWUXHµZKLFKPHDQV´0\DSSLVWKUHDG
VDIHVR,GR127QHHGWRLPSOHPHQW6LQJOH7KUHDG0RGHOZKLFK,NQRZLVLQKHUHQWO\HYLOµ7KHRQO\
UHDVRQWRVSHFLIL\WKLVDWWULEXWHLVLI\RXQHHGWRVHWWKHDWWULEXWHYDOXHWR´IDOVHµZKLFKPHDQVWKDW
\RXZDQWWKHJHQHUDWHGVHUYOHWWRXVHWKH6LQJOH7KUHDG0RGHOEXW\RXQHYHUZLOO
'HILQHVZKHWKHUWKHEXIIHUHGRXWSXWLVIOXVKHGDXWRPDWLFDOO\7KHGHIDXOWYDOXHLV´WUXHµ
'HILQHVKRZEXIIHULQJLVKDQGOHGE\WKHLPSOLFLWRXWREMHFWUHIHUHQFHWRWKH-VS:ULWHU
'HILQHVZKHWKHUWKHSDJHZLOOKDYHDQLPSOLFLWVHVVLRQREMHFW7KHGHIDXOWYDOXHLV´WUXHµ
'HILQHVWKH-DYDLPSRUWVWDWHPHQWVWKDW·OOEHDGGHGWRWKHJHQHUDWHGVHUYOHWFODVV<RXJHWVRPH
LPSRUWVIRUIUHHE\GHIDXOWMDYDODQJGXKMDYD[VHUYOHWMDYD[VHUYOHWKWWSDQGMDYD[VHUYOHWMVS
'HILQHVWKHVXSHUFODVVRIWKHFODVVWKLV-63ZLOOEHFRPH<RXZRQ·WXVHWKLVXQOHVV\RX5($//<
NQRZZKDW\RX·UHGRLQJ³LWRYHUULGHVWKHFODVVKLHUDUFK\SURYLGHGE\WKH&RQWDLQHU
/FTHEPAGEDIRECTIVEATTRIBUTESINTHE*30SPECONLYFOURARECOVEREDONTHE
EXAM9OUDO./4HAVETOMEMORIZETHEENTIRELISTJUSTGETAFEELFORWHATYOUCANDO
7ELLLOOKATTHEIS%,)GNOREDANDTHETWOERRORRELATEDATTRIBUTESINLATERCHAPTERS
127RQWKHH[DP
3266,%/<RQWKHH[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
7KLVLV68&+DQLFH
FKDSWHUZLWKD9(5<ORYHO\ORRN
DWKRZWRSXW-DYDFRGHLQD-63
EXWXPORRNDWWKLVFRPSDQ\
ZLGHPHPR,MXVWJRW
,QWHURI¿FH0HPRIURPWKH&72
85*(17
(IIHFWLYHLPPHGLDWHO\DQ\RQHFDXJKW
XVLQJVFULSWOHWVH[SUHVVLRQVRU
GHFODUDWLRQVLQWKHLU-63FRGHZLOOEH
VXVSHQGHGZLWKRXWSD\XQWLOVXFKWLPH
DVLWFDQEHGHWHUPLQHGZKHWKHUWKH
SURJUDPPHUZDVIXOO\UHVSRQVLEOHRU
VLPSO\WU\LQJWRPDLQWDLQVRPH27+(5
LGLRW¶VFRGH
,ILQIDFWWKHGHWHUPLQDWLRQLV
PDGHWKDWWKHSURJUDPPHULVLQIDFW
UHVSRQVLEOHWKHFRPSDQ\ZLOOJRDKHDG
DQGLQIDFWWHUPLQDWHWKHHPSOR\HH
5LFN)RUHVWHU
&KLHI7HFKQRORJ\2I¿FHU
³5HPHPEHUWKHUHLVQR³,´LQ7($0´
³:ULWH\RXUFRGHDVLIWKHQH[WJX\
WRPDLQWDLQLWLVDKRPLFLGDOPDQLDF
ZKRNQRZVZKHUH\RXOLYH´
>1RWHWR+5ZHXVH³JX\´LQLWVQRQ
JHQGHUVSHFL¿FIRUP@
DUHVFULSWOHWV
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
\RXDUHKHUH
;KZQX\TM\[KWV[QLMZMLPIZUN]T'
)SITTRUE#OULDTHEREBEADOWNSIDETOPUTTINGALLTHIS*AVAINTOYOUR*30!FTER
ALLISNTTHATTHEWHOLEFRICKIN0/).4TOA*303OTHATYOUWRITEYOUR*AVAIN
WHATISESSENTIALLYAN(4-,PAGEASOPPOSEDTOWRITING(4-,INA*AVACLASS
3OMEPEOPLEBELIEVE/+TECHNICALLYALOTOFPEOPLEINCLUDINGTHE*30AND
3ERVLETSPECTEAMSTHATITSBADPRACTICETOPUTALLTHIS*AVAINTOYOUR*30
7HY)MAGINEYOUVEBEENHIREDTOBUILDABIGWEBSITE9OURTEAMINCLUDES
ASMALLHANDFULOFBACKEND*AVAPROGRAMMERSANDAHUGEGROUPOFhWEB
DESIGNERSvGRAPHICARTISTSANDPAGECREATORSWHOUSE$REAMWEAVERAND
0HOTOSHOPTOBUILDFABULOUSLOOKINGWEBPAGES4HESEARENOTPROGRAMMERS
WELLEXCEPTFORTHEONESWHOSTILLTHINK(4-,IShCODINGv
'R<28
NQRZ-DYD"
'XGHGR,/22.OLNH
VRPHRQHZKRZRXOGZULWH
FRGH",·PDKLJKSDLG:HE
'HVLJQHU
'(6,*1(5,·PDQ
$57,67QRWDFRGHU
$VSLULQJDFWRUVZRUNLQJDVZHEGHVLJQHUV
ZKLOHZDLWLQJIRUWKHLUELJVKRZEL]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
7ZRTXHVWLRQV³:+<DUH
\RXPDNLQJXVOHDUQLWDQG:+$7LV
WKHDOWHUQDWLYH":KDWWKHIHOVH
,6WKHUHEHVLGHV+70/LI\RXFDQ·W
SXWVFULSWOHWVGHFODUDWLRQVDQG
H[SUHVVLRQVLQ\RXU-63"
<PMZMLQLV¼\][ML\W*-IVIT\MZVI\Q^M
4HATMEANSTHEREAREALREADYMOUNTAINSOF*30lLESBRIMMINGWITH
*AVACODESTUCKINEVERYCONCEIVABLESPOTINTHEPAGENESTLED
BETWEENSCRIPTLETEXPRESSIONANDDECLARATIONTAGS)TSOUTTHERE
ANDTHEREISNTANYTHINGANYONECANDOTOCHANGETHEPAST3O
THATMEANSYOUVEGOTTOKNOWHOWTOREADANDUNDERSTANDTHESE
ELEMENTSANDHOWTOMAINTAINPAGESWRITTENWITHTHEMUNLESS
YOUREGIVENTHECHANCETOMASSIVELYREFACTORTHEAPPS*30S
3ECRETLYWETHINKTHERESSTILLAPLACEFORSOMEOFTHISNOTHING
BEATSALITTLE*AVAINA*30FORQUICKLYTESTINGSOMETHINGOUTONYOUR
SERVER"UTFORTHEMOSTPARTYOUDONTWANTTOUSETHISFORREAL
PRODUCTIONPAGES
4HEREASONTHISISALLONTHEEXAMISBECAUSETHEALTERNATIVESARE
STILLFAIRLYNEWSOMOSTOFTHEPAGESOUTTHERETODAYARESTILLhOLD
SCHOOLv&ORTHETIMEBEINGYOUSTILLHAVETOBEABLETOWORKWITHIT!T
SOMEPOINTWHENTHENEW*AVAFREETECHNIQUESHITCRITICALMASSTHE
OBJECTIVESFROMTHISCHAPTERWILLPROBABLYDROPOFFTHEEXAMAND
WELLALLBREATHEACOLLECTIVESIGHATTHEDEATHOF*AVAIN*30S
"UTTODAYISNOTTHATDAY
1RWHWRSDUHQWVDQGWHDFKHUVWKHIRXUOHW
WHUZRUGLPSOLHGLQWKLVWKRXJKWEXEEOHWKDW
VWDUWVZLWK´IµIROORZHGE\WKUHHDVWHULVNV
LV127ZKDW\RXWKLQN,WZDVMXVWDZRUG
WKDWZHIRXQGWRRIXQQ\WRLQFOXGHZLWKRXW
GLVWUDFWLQJWKHUHDGHUVRZHEOHHSHGLWRXW
%HFDXVHLW·VIXQQ\1RWEDG
VFULSWLQJLVRXWWKHUH
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
\RXDUHKHUH
-4"\PMIV[_MZ\W_MTT
M^MZa\PQVO
/RALMOSTEVERYTHING"UTCERTAINLYANANSWERTOTWOBIG
COMPLAINTSABOUTPUTTINGACTUAL*AVAINTOA*30
7EBPAGEDESIGNERSSHOULDNTHAVETOKNOW*AVA
*AVACODEINA*30ISHARDTOCHANGEANDMAINTAIN
%,STANDSFORh%XPRESSION,ANGUAGEvANDITBECAMEOFlCIALLY
PARTOFTHESPECBEGINNINGWITH*30SPEC%,ISNEARLY
ALWAYSAMUCHSIMPLERWAYTODOSOMEOFTHETHINGSYOUD
NORMALLYDOWITHSCRIPTLETSANDEXPRESSIONS
/FCOURSERIGHTNOWYOURETHINKINGh"UTIF)WANTMY*30
TOUSECUSTOMMETHODSHOWCAN)DECLAREANDWRITETHOSE
METHODSIF)CANTUSE*AVAv
!HHHHWRITINGTHEACTUALFUNCTIONALITYMETHODCODEISNOT
THEPURPOSEOF%,4HEPURPOSEOF%,ISTOOFFERASIMPLERWAY
TOINVOKE*AVACODEBUTTHECODEITSELFBELONGSSOMEWHEREELSE
4HATMEANSINAREGULAROLD*AVACLASSTHATSEITHERA*AVA"EAN
ACLASSWITHSTATICMETHODSORSOMETHINGCALLEDA4AG(ANDLER
)NOTHERWORDSYOUDONTWRITEMETHODCODEINTOYOUR*30
WHENYOUREFOLLOWINGTODAYS"EST0RACTICES9OUWRITETHE*AVA
METHODSOMEWHEREELSEANDCALLITUSING%,
2KLIRQO\WKHUHZHUHDZD\
LQD-63WRXVHVLPSOHWDJV
WKDWFDXVH-DYDPHWKRGVWRUXQ
ZLWKRXWKDYLQJWRSXWDFWXDO-DYD
FRGHLQWRWKHSDJH
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
;VMISXMMSI\-4
4HEENTIRENEXTCHAPTERISON%,SOWEWONTGOINTODETAILSHERE
4HEONLYREASONWERECOVERINGITISBECAUSEITSYETANOTHERKIND
OFELEMENTWITHITSOWNSYNTAXTHATGOESINA*30ANDTHEEXAM
OBJECTIVESFORTHISCHAPTERINCLUDERECOGNIZINGEVERYTHINGTHATCAN
GOINTOA*30
3OHDVHFRQWDFW^DSSOLFDWLRQ6FRSHPDLO`
7KLV(/H[SUHVVLRQ
3OHDVHFRQWDFW DSSOLFDWLRQJHW$WWULEXWH³PDLO´!
,VWKHVDPHDVWKLV-DYDH[SUHVVLRQ
$Q(/H[SUHVVLRQ$/:$<6
ORRNVOLNHWKLV^VRPHWKLQJ`
,QRWKHUZRUGVWKHH[SUHVVLRQ
LV$/:$<6HQFORVHGLQFXUO\
EUDFHVDQGSUH¿[HGZLWKD
GROODUVLJQ
WKHUH DUH QR
'
XPE 4XHVWLRQV
4
.OTTOBEALLNEGATIVEBUT)MNOTSURE)SEEANEARTHSHATTERING
DIFFERENCEBETWEENTHE%,ANDTHE*AVAEXPRESSION3UREITSALITTLE
SHORTERBUTISTHATWORTHAWHOLENEWSCRIPTINGLANGUAGEAND*30
CODINGAPPROACH
$
9OU3/HAVENTSEENTHEFULLBENEFITOF%,YET4HEDIFFERENCES
WILLBECOMEOBVIOUSINTHENEXTCHAPTERWHENWEDIVEIN"UTYOUMUST
REMEMBERTHATTOA*AVAPROGRAMMER%,IS./4NECCESSARILYADRAMATIC
DEVELOPMENTADVANTAGE)NFACTTOA*AVAPROGRAMMERITSIMPLYMEANS
hONEMORETHINGWITHITSOWNSYNTAXANDEVERYTHINGTOLEARNWHENHEY)
ALREADY+./7*AVAv
"UTITSNOTALWAYSABOUTYOU%,ISMUCHEASIERFORANON*AVAPROGRAMMER
TOLEARNANDGETUPTOSPEEDIN!NDFORA*AVAPROGRAMMERITISSTILLMUCH
EASIERTOMAINTAINASCRIPTLESSPAGE
9ESITSSTILLSOMETHINGTOLEARN)TDOESNTLETWEBPAGEDESIGNERS
COMPLETELYOFFTHEHOOKBUTYOULLSOONSEETHATITSMOREINTUITIVEAND
NATURALFORAWEBDESIGNERTOUSE%,&ORNOWINTHISCHAPTERYOUSIMPLY
NEEDTOBEABLETORECOGNIZE%,WHENYOUSEEIT!NDDONTWORRYATTHIS
POINTABOUTRECOGNIZINGWHETHERTHEEXPRESSIONITSELFISVALIDALLWECARE
ABOUTNOWISTHATYOUCANPICKOUTAN%,EXPRESSIONINA*30PAGE
¿UVWORRNDW
(/
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
\RXDUHKHUH
$QGMXVW+2:GR\RXH[SHFW
PHWRJHWP\SURJUDPPHUVWR
VWRSXVLQJVFULSWLQJHOHPHQWV
LQWKHLU-63V"
(DV\³\RX
FDQ
SXWDQ
HOHPHQWLQWKH''WKDW
GLVDEOHVDOOVFULSWLQJ
HOHPHQWV
=[QVO$[KZQX\QVOQV^ITQL&
)TSSIMPLEYOUCANMAKEITINVALIDFORA
*30TOHAVESCRIPTINGELEMENTSSCRIPTLETS
*AVAEXPRESSIONSORDECLARATIONSBY
PUTTINGASCRIPTINGINVALIDTAGINTHE$$
ZHEDSS!
MVSFRQ¿J!
MVSSURSHUW\JURXS!
XUOSDWWHUQ!MVSXUOSDWWHUQ!
VFULSWLQJLQYDOLG!
WUXH
VFULSWLQJLQYDOLG!
MVSSURSHUW\JURXS!
MVSFRQ¿J!
ZHEDSS!
This disables scripting elements
for ALL JSPs in the app
(because we used the wildcard
*.jsp as the URL pattern.)
7ATCHOUTYOUMIGHTHAVESEENOTHERBOOKS
ORARTICLESSHOWAPAGEDIRECTIVETHATDISABLES
SCRIPTING)NADRAFTVERSIONOFTHESPEC
THEREWASAPAGEDIRECTIVEATTRIBUTE
PAGEIS3CRIPTING%NABLEDvFALSEv
BUTITWASREMOVEDFROMTHElNALSPEC
4HEONLYWAYTOINVALIDATESCRIPTINGNOWIS
THROUGHTHESCRIPTINGINVALID$$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]KIVKPWW[M\WQOVWZM-4
9ES%,ISAGOODTHINGTHATSGOINGTOSAVETHEWORLDASWEKNOWIT"UTSOMETIMES
YOUMIGHTWANTTODISABLEIT7HY
4HINKBACKTOWHENTHEASSERTKEYWORDWASADDEDTOTHE*AVALANGUAGEWITHVERSION
3UDDENLYTHEFORMERLYUNRESERVEDANDPERFECTLYLEGALIDENTIlERhASSERTvMEANT
SOMETHINGTOTHECOMPILER3OIFYOUHADSAYAVARIABLENAMEDASSERTYOUWERE
SCREWED%XCEPTTHAT*3%VERSIONCAMEWITHASSERTIONSDISABLEDBYDEFAULT)FYOU
KNEWYOUWEREWRITINGORRECOMPILINGCODETHATDIDNTUSEASSERTASANIDENTIlER
THENYOUCOULDCHOOSETOENABLEASSERTIONS
3OITSKINDOFTHESAMETHINGWITHDISABLING%,IFYOUHAPPENEDTOHAVETEMPLATE
TEXTPLAINOLD(4-,ORTEXTINYOUR*30THATINCLUDEDSOMETHINGTHATLOOKEDLIKE
%,[SOMETHING]YOUDBEIN"IG4ROUBLEIFYOUCOULDNTTELLTHE#ONTAINERTOJUST
IGNOREANYTHINGTHATAPPEARSTOBE%,ANDINSTEADTREATITLIKEANYOTHERUNPROCESSED
TEXT%XCEPTTHERESONEBIGDIFFERENCEBETWEEN%,ANDASSERTIONS
%LISENABLEDBYDEFAULT
)FYOUWANT%,LOOKINGTHINGSINYOUR*30TOBEIGNOREDYOUHAVETOSAYSO
EXPLICITLYEITHERTHROUGHAPAGEDIRECTIVEORA$$ELEMENT
ZHEDSS!
MVSFRQ¿J!
MVSSURSHUW\JURXS!
XUOSDWWHUQ!MVSXUOSDWWHUQ!
HOLJQRUHG!
WUXH
HOLJQRUHG!
MVSSURSHUW\JURXS!
MVSFRQ¿J!
ZHEDSS!
3XWWLQJHOLJQRUHG!LQWKH''
8VLQJWKHLV(/,JQRUHGSDJH
GLUHFWLYHDWWULEXWH
#SDJHLV(/,JQRUHG ´WUXH´!
,IWKHUH¶VDFRQÀLFWEHWZHHQWKH
HOLJQRUHG!VHWWLQJLQWKH''DQG
WKHLV(/,JQRUHGSDJHGLUHFWLYHDWWUL
EXWHWKHGLUHFWLYHDOZD\VZLQV7KDW
OHWV\RXVSHFLI\WKHGHIDXOWEHKDYLRU
LQWKH''EXWRYHUULGHLWIRUDVSHFL¿F
SDJHXVLQJDSDJHGLUHFWLYH
7KHSDJHGLUHFWLYH
WDNHVSULRULW\RYHU
WKH''VHWWLQJ
7KH''WDJLVHOLJQRUHG!VRRQHPLJKW
UHDVRQDEO\WKLQNWKDWWKHSDJHGLUHFWLYH
DWWULEXWHZRXOGEHRKPD\EHHO,JQRUHG"
%XWQRRQHZRXOGEHZURQJLIRQHMXPSHG
WRWKHQDWXUDOFRQFOXVLRQ7KH''DQG
GLUHFWLYHIRULJQRULQJ(/GRQRWPDWFK
'RQ¶WEHIRROHGE\LVHOLJQRUHG!
:DWFKRXWIRU
WKHQDPLQJ
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
\RXDUHKHUH
*]\_IQ\\PMZM¼[[\QTT
IVW\PMZ
2;8
MTMUMV\_MPI^MV¼\[MMV"
IK\QWV[
3OFARYOUVESEENlVEDIFFERENTTYPESOFELEMENTSTHATCANAPPEARINA*30
SCRIPTLETSDIRECTIVESDECLARATIONS*AVAEXPRESSIONSAND%,EXPRESSIONS
"UTWEHAVENTSEENACTIONS4HEYCOMEINTWOmAVORSSTANDARDANDNOT
MVSLQFOXGHSDJH ´ZLFNHG)RRWHUMVS´!
6WDQGDUG$FWLRQ
FVHWYDU ´UDWH´YDOXH ´´!
2WKHU$FWLRQ
!LTHOUGHTHATSMISLEADINGBECAUSETHEREARESOMEACTIONSTHATARENT
CONSIDEREDSTANDARDACTIONSBUTWHICHARESTILLPARTOFANOWSTANDARD
LIBRARY)NOTHERWORDSYOULLLATERLEARNTHATSOMEOFTHENONSTANDARD
THEOBJECTIVESREFERTOTHEMASCUSTOMACTIONSARESTANDARDBUTYET
THEYSTILLARENTCONSIDEREDhSTANDARDACTIONSv9ESTHATSRIGHTTHEYRE
STANDARDIZEDNONSTANDARDCUSTOMACTIONS$OESNTTHATJUSTCLEARITRIGHT
UPFORYOU
)NALATERCHAPTERWHENWEGETTOhUSINGTAGSvWELLHAVEASLIGHTLYRICHER
VOCABULARYWITHWHICHTOTALKABOUTTHISINMOREDETAILSORELAX&ORNOW
ALLWECAREABOUTISRECOGNIZINGANACTIONWHENYOUSEEITINA*30
6KDUSHQ \RXU SHQFLO
/RRNDWWKHV\QWD[IRUDQDFWLRQDQGFRPSDUHLWWRWKHV\QWD[IRUWKHRWKHU
NLQGVRI-63HOHPHQWV7KHQDQVZHUWKLV
:KDWDUHWKHGLIIHUHQFHVEHWZHHQDQDFWLRQHOHPHQWDQGDVFULSWOHW"
+RZZLOO\RXUHFRJQL]HDQDFWLRQZKHQ\RXVHHLW"
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
7KLQNDERXWZKDWKDSSHQVZKHQHDFKRI
WKHVHVHWWLQJVRUFRPELQDWLRQRIVHWWLQJV
RFFXUV<RX·OOVHHWKHDQVZHUVZKHQ\RX
WXUQWKHSDJHVRGRWKLVRQH12:
(YDOXDWLRQ0DWUL[
XQVSHFLILHG XQVSHFLILHG
IDOVH XQVSHFLILHG
WUXH XQVSHFLILHG
IDOVH IDOVH
IDOVH WUXH
WUXH IDOVH
''FRQÀJXUDWLRQ
HOLJQRUHG!
SDJHGLUHFWLYH
LV(/,JQRUHG
HYDOXDWHG LJQRUHG
3ODFHDFKHFNPDUNLQWKHHYDOXDWHGFROXPQLIWKH
VHWWLQJVZRXOGFDXVHWKH(/H[SUHVVLRQVWREH
HYDOXDWHG25SODFHDFKHFNPDUNLQWKHLJQRUHG
FROXPQLI(/ZLOOEHWUHDWHGOLNHRWKHUWHPSODWHWH[W
1RURZZLOOKDYHWZRFKHFNPDUNVRIFRXUVH
(/(YDOXDWLRQ
XQVSHFLILHG
WUXH
IDOVH
''FRQÀJXUDWLRQ
VFULSWLQJLQYDOLG!
HYDOXDWHG LJQRUHG
6FULSWLQJYDOLGLW\
([HUFLVH
HYDOXDWLRQH[HUFLVH
3ODFHDFKHFNPDUNLQWKHHYDOXDWHGFROXPQLIWKHVHWWLQJV
ZRXOGFDXVHWKHVFULSWLQJH[SUHVVLRQVWREHHYDOXDWHG
25SODFHDFKHFNPDUNLQWKHLJQRUHGFROXPQLIVFULSWLQJ
ZLOOEHWUHDWHGOLNHRWKHUWHPSODWHWH[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
\RXDUHKHUH
-63(OHPHQW0DJQHWV
0DWFKWKH-63HOHPHQWZLWKLWVODEHOE\SODFLQJWKH-63VQLSSHWLQ
WKHER[ZLWKWKHODEHOUHSUHVHQWLQJWKDWHOHPHQWW\SH5HPHPEHU
\RX·OOKDYH'UDJDQG'URSTXHVWLRQVRQWKHUHDOH[DPVLPLODUWR
WKLVH[HUFLVHVRGRQ·WVNLSLW
GLUHFWLYH
GHFODUDWLRQ
(/H[SUHVVLRQ
VFULSWOHW
H[SUHVVLRQ
DFWLRQ
#SDJHLPSRUW ´MDYDXWLO´!
LQW\ !
HPDLO^DSSOLFDWLRQ6FRSHPDLO`
)ORDWRQH QHZ)ORDW!
SDJH&RQWH[WJHW$WWULEXWH³IRR´!
MVSLQFOXGH¿OH ´IRRKWPO´!
-63HOHPHQWW\SH
-63VQLSSHW
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¿QDOFODVV%DVLF&RXQWHUBMVSH[WHQGVRUJDSDFKHMDVSHUUXQWLPH+WWS-VS%DVH
LPSOHPHQWVRUJDSDFKHMDVSHUUXQWLPH-VS6RXUFH'HSHQGHQW^
SXEOLFYRLGBMVS6HUYLFH+WWS6HUYOHW5HTXHVWUHTXHVW+WWS6HUYOHW5HVSRQVHUHVSRQVH
WKURZVMDYDLR,2([FHSWLRQ6HUYOHW([FHSWLRQ^
`
`
-63(OHPHQW0DJQHWVWKH6HTXHO
<RXNQRZZKDWWKH\·UHFDOOHGEXWGR\RXUHPHPEHUZKHUHWKH\JRLQWKH
JHQHUDWHGVHUYOHW"2IFRXUVH\RXGR%XWWKLVLVMXVWDOLWWOHUHLQIRUFHPHQWSUDFWLFH
EHIRUHZHPRYHRQWRDGLIIHUHQWFKDSWHUDQGWRSLF
3XWWKHHOHPHQWLQWKHER[FRUUHVSRQGLQJWRZKHUHWKDWHOHPHQW·VJHQHUDWHGFRGH
ZLOOJRLQWKHVHUYOHWFODVVILOH1RWHWKDWWKHPDJQHWLWVHOIGRHVQRWUHSUHVHQWWKH
$&78$/FRGHWKDWZLOOEHJHQHUDWHG
UHTXHVWJHW$WWULEXWH³IRR´!
#SDJHLPSRUW ´MDYDXWLO´!
LQW\ !
)ORDWRQH QHZ)ORDW!
HPDLO^DSSOLFDWLRQ6FRSHPDLO`
-63HOHPHQWVH[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
\RXDUHKHUH
(YDOXDWLRQ0DWUL[
$16:(56
XQVSHFLILHG XQVSHFLILHG
IDOVH XQVSHFLILHG
WUXH XQVSHFLILHG
IDOVH IDOVH
IDOVH WUXH
WUXH IDOVH
''FRQÀJXUDWLRQ
HOLJQRUHG!
SDJHGLUHFWLYH
LV(/,JQRUHG
HYDOXDWHG LJQRUHG
(/(YDOXDWLRQ
XQVSHFLILHG
WUXH
IDOVH
''FRQÀJXUDWLRQ
VFULSWLQJLQYDOLG!
HYDOXDWHG LJQRUHG
6FULSWLQJYDOLGLW\
([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.