java server pages doc 18 july 2007

Upload: laveen-chenna-nani

Post on 06-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    1/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com1

    !"#$"%

    !

    "# "$

    %

    &' &(&' &)

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    2/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com2

    %*+&)*+ &,&-

    $./&

    00000000

    0. 0%%1%

    0000222232323232

    '&"43

    "567"567"567"567"3

    .,8"5-

    * * *9%3

    *!

    1)*&

    *:'&"4;"

    03%)

    !

    '&"*

    3%

    ,-

    '%%3%.

    ''''

    $.##

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    3/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com3

    &B'0B

    )..CD)...CD

    '$))))'E

    8888,'?FF%'?-

    )%..+)E.&&&&,B)4B-D..06.0000,-D

    .,BG7B-D.,BG7B-D.,BG7'G47B-D

    .,BG47B-D.,BG7B-D.,BG#7'0HG4#7B-D

    .,B&G7B5,-5BG47B-D

    .,BG47B-D.,BG47B-D.,-D

    I

    I

    G7

    G7G7'G47G47

    G7

    G#7'0G4#7

    &GJ6..,-J7G47

    G47

    !% 3 '&" . K .

    0!*=1 % .0

    %.& ) ."

    )L

    '$. B B44?++& 3L44LM/M/4'$.

    0%

    %3%.K

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    4/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com4

    32

    3.&%.&

    .%N33

    &% )% . BOB43444BB.

    & . . & %F

    &%%..3.

    '&)L

    &%&%&%&%

    33.P33.P33.P33.P)...CDO)....'!

    ....E

    ..QO)OD

    ..,-EO)ODI

    O,'?FF%'?-

    ..+)%)E

    1O)16D))6D

    '6D

    )6D6D

    06D+6D

    0O)O6D

    EO)161.1,-D

    .&,B)4B-D)6O)1.),%F%%

    %%M#

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    5/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com5

    6).+,-DO)O6D

    .,BRB-D.,BG7RB-D

    .,BG7RB-D

    .,BG7'B-D.,BG47RB-D.,BG47RB-D

    .,BG7RB-D

    .,BG#7'0B-D.,BG4#7R&B-D

    .,.+,..,---D

    .,BRB-D.,BG47RB-D.,BG47RB-D

    I,&-E

    ,H,)...3)--E6O)OD

    ,H6((.!9,-H6/-.!,-D,)H6-).),-DI

    IE

    ,O)1H6-O)1.),)-DI

    II

    ! 3 % 3

    2 0N 3

    . %H

    40!*=14

    *

    * :,

    40!*=14

    ++++

    & * 0 .0%

    8 % F . & 3 F3 9

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    6/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com6

    %*.

    N1"NF3 0 . $ &8P % '&"*

    . & * 0

    1 . %*.%&8>%3'&"

    .&8

    .

    + % '&"

    . &8 , '&"- * 0 % 9 . &8 3 P

    !

    ST).%>'&"!'&"

    %0*%.'%N3% * 0.:%L$%

    *.

    $.QA&8N$%%&8

    '&".&,1#-"$"L

    1% #.# B .B&

    $ . % % 3 &8N '&"

    F . &

    '&" ). 0 3 $ % &8 F

    3 . &8 % F3'&")$ &8 %&8 '&"&.&

    &8 3 % *&8 $ .&

    %313%1$. A.U.#% &8 ,V1%

    %"-*.

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    7/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com7

    '&"0*% 0.&

    ! ? ?F.&'&".

    0* '&"

    . % %% . & "

    '&" * ( ' .

    & ' = 9,-.,-.,-.,-.

    '&". 30%:F:?%

    .0 )%&).& '&" ='&" .

    %

    W .& '&"8 .

    '3'3'3'322220000FFFF

    1111 &&&&

    ????

    ????

    '&"'&"'&"'&"

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    8/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com8

    FFFFFFFF

    3 .

    .&

    .&%'&"+4. 9 '. & ,-%O,-,-.&.

    .0%,-

    ) O,- F ),-4.

    3F%4 .

    .

    ????

    ????

    '&"'&"'&"'&"

    #. 30*$. 3Q>. &

    @. A.

    U. )

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    9/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com9

    1 3

    .&L

    F,FF-L

    ;" 3 *,F%

    %

    4-.

    % 3 )

    ,% % - %

    )%).

    )

    ....

    o

    ' ) )

    +)

    &)

    1111

    QQQQ

    &&&&

    ))))

    ,-,-,-,-

    OOOO,-,-,-,-

    ,-,-,-,-

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    10/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com10

    0H 2 &

    2)).&9L

    9 QF &"

    !!!!

    ++3

    0.&'&".

    03&.

    1 ) 3 :* )

    .&'&"1%".0

    :.&1

    Q? !.

    &A.&1

    #-#-#-#-'&"'&"'&"'&"GH****7

    +,G!7G7-),) '&" - %

    3 )

    3

    '&".,-%)'&".

    GH**

    *,-L*L

    *=L**7

    $-$-$-$-GJ****J7

    + ).

    P .,-%P.

    &'&" GJ**

    *,-L*L

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    11/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com11

    *=L*X,Y-

    *L**J7>->->->-

    GJH#%$DJ7

    GJH%DDJ7 4*

    4

    *D

    &@-)@-)@-)@-)

    GJ6),-ZZJ7

    :)%&+:&4)L

    GJ6,-J7

    GJ6J7GJ6#/J7GJ6BBJ7

    A-A-A-A-GJ******

    J7

    &)43%%%9.

    .

    &>.&

    #-#-#-#-

    GJX6BB47:'&"%

    .$-$-$-$-

    GJX6B.F.C%..CBJ7: 3

    GJXOOOJ7

    OOOLL6E6BBI

    E)6B=BI*

    E6BBI*..C%)..C%)...C)...CE6BZBI

    *E6BZM3Z93BIE16BZBI

    *36

    E&6BZBIE6BO)BIE6BOBI

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    12/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com12

    E6BZBIE&6BBI*B)4B

    E6BBI*B+*MMA-&>-&>-&>-&

    GJX6BB)6BBJ7

    &:.

    &M.&

    #-GL6BB6BB47#-GL6BB6BB47#-GL6BB6BB47#-GL6BB6BB471?F.,F%-D

    $-GL6BB6BB47$-GL6BB6BB47$-GL6BB6BB47$-GL6BB6BB471?F.,F%-DGJX7GL7LGJX7GL7LGJX7GL7LGJX7GL7L

    GJXJ7F

    X %)

    GL47 F

    X%)% 4'&"

    .

    =L!BBBLBBQB.

    >- GL! 6BOB 6B.!B 6B..+B>- GL! 6BOB 6B.!B 6B..+B>- GL! 6BOB 6B.!B 6B..+B>- GL! 6BOB 6B.!B 6B..+B

    6BZFZZB76BZFZZB76BZFZZB76BZFZZB7

    &3!

    3

    &34

    3@

    o &

    F.,S+==T%-D ).,S+==T% %

    ).?V:&O&&?!:&-Do &

    6,-F.,S+==T-D

    6,-).,S+==T-%).?V:&O&&?!:&-D

    @-GL6BOB6B=B6B#/B47@-GL6BOB6B=B6B#/B47@-GL6BOB6B=B6B#/B47@-GL6BOB6B=B6B#/B47&3;;;,-F."

    GL!7

    A-GL6BOB6BB47A-GL6BOB6BB47A-GL6BOB6BB47A-GL6BOB6BB47

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    13/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com13

    &3;;;,-.&L!

    U-GL 6BZBU-GL6BZBU-GL 6BZBU-GL6BZB 6B1B 6BB6BB6B1B 6BB6BB6B1B 6BB6BB6B1B 6BB 6BB6BB6BB6BB76BB6BB6BB76BB6BB6BB76BB6BB6BB7

    &34Q!,-

    [-GL347[-GL347[-GL347[-GL347

    &)F)

    .

    M-GL6BB6BB47M-GL6BB6BB47M-GL6BB6BB47M-GL6BB6BB47

    &GL7

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    14/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com14

    )

    4

    4

    1111&%)&+"&

    GHGHGHGH********'.'.'.'.********7777GJX6T..CTJ7GJH6,-DJ7

    GJ6T'LS5.,-J7

    J&+"&O'+"JRR?++&R

    :?L:?L:?L:?LL44LM/M/4'.

    &L

    &,.)-

    ,.)-

    ?4

    J:?O'+"JJ:?O'+"JJ:?O'+"JJ:?O'+"JRRRRRRRRRRRR!".!".!".!".RRRR0!0!0!0!****=1=1=1=1RRRR.).).).)

    .&:?.&:?.&:?.&:?:?L:?L:?L:?L

    L44LM/M/44!"&.L44LM/M/44!"&.L44LM/M/44!"&.L44LM/M/44!"&.....

    ,&3,&3,&3,&3.).).).)

    3 3 3 3 3 3 3 3 ----

    GH"=&,C%8=?%5-7

    GH"=&8=?,C%?C%?C-7

    GH"=&,C%C%-7GH"=&,%QC%?C%'C-7

    GH"=&',C%QC%)C-7GH"=&,"%?%%Q%-7GH"=&),%?C%?C-7

    GH"=&?,C-7

    GH"=&,%-7

    GH"=&?"&K7

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    15/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com15

    GH"=&,Y&-7GH"=&,Y&-7

    LLLLRRRR1111RRRR1111RRRR&A./&A./&A./&A./RRRRRRRR.).).).)G7

    G7G47

    G7G47G8=?7

    G7G47

    G?7G4?7G?7G4?7

    G48=?7

    G67G7G47

    G7G47

    G7G47G7G47

    G6BB7G47G6BB'6BB6B/B7G7

    G?7

    G?7G' 6BB !6BB 306BB

    6BB7G) 6B4B !6BB 6BAB 6BB

    )6BB7G=6B....1B

    )6BOO.B)6B.)B6BB47

    G?6B4FB

    6BB6B).F.B47

    G?6B4FB7

    G7

    G7G47G7....!1G47

    GHGHGHGH******** & &&& . . . . J&+"&O'+"JJ&+"&O'+"JJ&+"&O'+"JJ&+"&O'+"JRRRRRRRRRRRR****. . . . . . . . 3 3 3 3

    .&+"&&'.&+"&&'.&+"&&'.&+"&&'********7777G47

    GHGHGHGH********")")")")!!!!."3."3."3."3

    F)O./F)O./F)O./F)O./

    ....********7777

    G7G7)G47

    G7#//G47G47

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    16/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com16

    GHGHGHGH********")! ")! ")! ")! ....////

    ....********7777G7G7)G47

    G7>/G47

    G47GHGHGHGH********")!") !")!") !% %%%

    )#/.))#/.))#/.))#/.)).).).).****####

    ....********7777G7

    G7)0G47

    G7#////G47G47

    GHGHGHGH********"V!!"V!!"V!!"V!!********7777

    G7G7G47

    G7G47G47G7G7G47

    G7G47

    G47

    GHGHGHGH********.F!.F!.F!.F!********7777G7

    G7=G47G7...+G47

    G47

    GHGHGHGH******** & ! "V !.& ! "V !.& ! "V !.& ! "V !. &&&&

    ?63?63?63?63.F!.F!.F!.F! F F F F . . . . F F F F

    M.M.M.M.********7777G7

    G7G47

    G7LLF=G47G47

    G4?7G4)7

    G4'7G47

    G47G47

    .).).).)G*7

    G7G7

    G*7G**7

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    17/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com17

    GGGG****7777GGGG********74747474FFFFG4G4G4G4********7777

    GGGG****7).F.G47).F.G47).F.G47).F.G4****7777GGGG****7G47G47G47G4****7777GGGG********7G47G47G47G4********7777

    G4G4G4G4****7777

    G4*7C4C4C4C4

    GHGHGHGH********!"&.!"&.!"&.!"&.********7777

    GJX6T)..C%).F.C%.F.C%..CTJ7GJH))DJ7

    GJHDJ7

    GJHDJ7GJHDJ7

    GJ

    E

    )6),-D6,-).3,BL444FB-D44 L4**** * $ 3 3

    F

    44L44*****F

    6.,-D6.,-D

    ?6.)V,B&C1?+"B-D

    ,.),--E

    ..,.,#--D..,.,$--D

    ..,.,>--DI44,-

    .,-D.,-D

    I44

    ,)-E.3&,-DIJ7

    QQQQ

    = * 38:L

    % %

    .

    )%%.

    %9,-N.

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    18/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com18

    8+1 % .

    "%8+1% N .1%$Q

    %%*0

    .%Q8+1.

    Q$% %%

    "3 % B: ...%B

    ** 8+1 . &

    %. % Q

    %%.&L

    %.

    GJX6TOTJ7GL6TOT47

    GJXJ7GJXJ7GJXJ7GJXJ7 GL47GL47GL47GL47

    &

    =

    '&" )

    +4 +4

    )

    )

    '&"

    &&&&))))

    GHGHGHGH********'.'.'.'.********7777

    G'&"7G!+K7G'#7G=&?7!3G4=&?7G4'#7

    GHGHGHGH********".".".".********7777G:7G7'G47

    G702G47G702G47G7:G47

    G7:G47

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    19/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com19

    G4:7

    GHGHGHGH********!.!.!.!.********7777G=&?70G4=&?7

    GHGHGHGH********1.1.1.1.********7777

    G=&?7G'U7 =& (D $//U * >//UG4'U7G4=&?7G4!+K7G4'&"7

    GJGJGJGJ********Q.Q.Q.Q.********J7J7J7J7G&!7

    G&?6B$B7

    G&'7GJX6B.4'.BJ7G4&'7G4&?7G&?7

    G&'6B$/JB7GJX6B.4".BJ7G4&'7

    G&'7GL6B.4!.B47G4&'7G4&?7

    G&?7G&'6B$B7GL6B.41.B47G4&'7G4&?7G4&!7

    &3&3&3&3

    1GJXJ7GJXJ7GJXJ7GJXJ7,-GL7GL7GL7GL7

    0

    "#"#"#"#

    #.#.#.#. ?F!$.$.$.$. !

    >.>.>.>. ?

    @.@.@.@. 3 " # F . &

    ?3FF.&

    JSPView

    JavaBeansDB

    Browser1

    4

    3

    2

    Client

    Application Server

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    20/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com20

    %!%:\.

    &"3"#\\\

    1F3

    0*.

    ..D)P

    ,- ,-

    9)

    1111

    )"#L)"#L)"#L)"#LL&))(?

    "#

    L

    V.V.V.V.G7G6B.4V.B7G7

    G7

    LG6B)B6B=B7G6BB6BB6BB7

    G47G47

    G47G47

    V.V.V.V.GJ

    =6 . ,F.,B=B- .,--D..,BLB5=-D

    J7GL!6BB6B.!B6BFB7

    GJ** & ) @

    ZFZZ.%.

    **J7GL6BB6B=B6NGJ6=J7N47

    GL6BB6B=B47GL6BB6BB47

    GL6BB6BB47G4L!7

    GL6B.4.B47

    ....

    GJ+6).,BB%).?V:&O+-D

    .!6,.!-DJ7

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    21/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com21

    GJ6.=,-J7G7GJ6.=,-J7G7

    GJ6.,-J7G7GJ6.,-J7G7GJ

    ).,BB%).+=O+-D

    J7!.!.!.!.

    3D

    ..CD.F.CD

    !9

    E =D =D

    D

    D !,-

    E I =,- E

    E .=,B...+B-D

    6".,BLLB-D

    6.,-D ? 6.)V,B C

    =6B5-D

    ,.),-- E

    =6.,#-D =6.,$-D

    6.,>-D 6.,@-D

    I

    .,-D I

    ,)- E

    .3&,-D I

    I =,-

    E

    =D I

    =,- E

    =6D I

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    22/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com22

    =,- E

    =D I

    ,-

    E

    6D I ,-

    E

    D I

    ,- E 6D

    I

    ,- E

    D II

    "$"$"$"$

    #.#.#.#. ?F!

    $.$.$.$. !>.>.>.>. ?%3

    @.@.@.@. 3A.A.A.A. !

    U.U.U.U. &

    & "Q ,"*Q*- .

    %&F

    Servlet(Controller)

    JSP(View)

    JavaBeans DB

    Browser1

    6

    5

    2

    34

    Client

    Application Server

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    23/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com23

    . & 9 ?F F ? ! "

    .1?F.&?.&Q.

    &\\\\\ &?. &

    .

    F)!. &3

    .

    11111 )

    "Q),Q.%Q.-.

    L

    . ).?F,S4Q.T-.,F%

    -D

    .

    ).?F,S4Q.T-.,F%

    -D

    !Q&L!Q&L!Q&L!Q&L#-#-#-#-

    ! % %

    )4,-

    $-$-$-$-

    )3)

    0)%

    .

    >->->->- ! %

    33 M

    ) )

    &&&&

    *.0

    %. & 0 3 N

    ).

    &).& ;" ) . %

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    24/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com24

    .... &

    &'&'&'&'%9.! %

    3.

    .&L

    !9.

    3.

    . . K 9 !

    % %

    . !.

    &&&&

    #-&'#-&'#-&'#-&'& &'%*

    ).

    &'=@.&

    & & !& &

    0) % %

    P3.$-&$-&$-&$-&

    &&.

    &% F.

    ?3F.&.

    >-&>-&>-&>-&0%3%

    .&*&

    ,&-.

    :&L:&L:&L:&L

    + 1 .

    0&.&

    &&&&)LGL=7GL=47GL=47

    &&&&

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    25/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com25

    )LGL==6TG7T47 &&&&

    )LGL6TT7=LGJ6F.,S=T-J7G4L7

    &&&&

    )LGLQ6PGJ6F.,ST-J7P7GLQ6PGJ6F.,ST-J7P7GLQ6PGJ6F.,ST-J7P7GLQ6PGJ6F.,ST-J7P7GLQ6T'T7

    'H

    G4L7GLQ6T!T7

    !H

    G4L7G4L7G4L7G4L7G4L7

    Q&Q&Q&Q&

    &&&&

    &&&&

    &&&&

    !!!!&&&&

    &&&&

    !!!!&&&&

    &&.&9 *

    .

    & &

    &

    .

    3.

    +

    .

    &.

    !&.

    & !& ) &

    .

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    26/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com26

    &&&&

    JSP Page/

    PageCompiledServlet

    TagHandler /

    TagSupportsubclass

    setPa eContext a eContext

    setParent arentTa

    setXXX val for each attribute

    doStartTa

    doAfterBod

    doEndTa

    release

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    27/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com27

    3 &'

    03%&'4444

    o ,-,-,-,-

    =)&'&'&'&')))),),),),)4M-4M-4M-4M-....

    o ),)-),)-),)-),)-

    &&')o &,-

    )!,-

    )&,- ,-

    ))))

    3 ,% % 1-,% % 1-,% % 1-,% % 1- ,++4!%+%!,++4!% +%!,++4!%+%!,++4!% +%!

    ----. 4 .) M F.

    ))))4444CCCC

    '.'.'.'.RRRR0!0!0!0!****=1=1=1=1RRRR

    .).).).)....

    RRRRRRRRRRRR

    &.&.&.&.

    &L&L&L&LGL47GL47GL47GL47

    C4C4C4C4

    44&.44&.44&.44&.

    3D)...).CD

    ..CD&)&

    E&,-)...)

    E..6..,-D

    E06).+,-D

    .,B'..B5-D.,-D

    I44,)-EI

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    28/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com28

    WO!+KDI44&,-

    I44.NL.NL.NL.NL

    GHGHGHGH********....********7777

    G2)6B#./B6B+*MMA44=BBL44..44*O$O>.B7

    G*7G7

    G*7G4*7 G*740!*=14.G4*7

    G47

    G4*7

    GHGHGHGH********'.'.'.'.********7777GJX6BB)6BBJ7

    GL47

    L44L[//#44'.L44L[//#44'.L44L[//#44'.L44L[//#44'.

    L44LM/M/44'.L44LM/M/44'.L44LM/M/44'.L44LM/M/44'.

    !

    DBQueryTest.jsp

    \WEB-INF\web.xml

    dbquery.tld

    \classes\dbquery\

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    29/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com29

    DBQueryTag.java

    // DBQueryTag.java

    package dbquery;

    import javax.servlet.jsp.*;

    import javax.servlet.jsp.tagext.*;

    import java.io.*;

    import java.sql.*;

    public class DBQueryTag extends TagSupport

    {

    String driver, url, user, pass, query;

    public void setDriver(String d)

    {

    driver=d;

    }

    public void setUrl(String u)

    {

    url=u;

    }

    public void setUser(String u)

    {user=u;

    }

    public void setPass(String p)

    {

    pass=p;

    }

    public void setQuery(String q)

    {

    query=q;

    }

    public int doStartTag() throws JspException

    {

    System.out.println("doStartTag()");

    try

    {

    JspWriter out=pageContext.getOut();

    Class.forName(driver);

    Connection con=DriverManager.getConnection(url, user, pass);

    Statement stmt=con.createStatement();

    ResultSet rs=stmt.executeQuery(query);

    ResultSetMetaData meta=rs.getMetaData();

    int colCount=meta.getColumnCount();

    out.println("");

    while(rs.next())

    {

    out.println("");

    for(int i=1;i

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    30/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com30

    }//try

    catch(Exception e) {

    e.printStackTrace();

    }// catch()

    return SKIP_BODY;

    }// doStartTag()

    }// class

    dbquery.tld

    1.0

    1.1

    dbquery

    This tag populates requested table content on browser.

    dbquery

    dbquery.DBQueryTag

    empty

    driver

    true

    false

    url

    true

    false

    user

    true

    false

    pass

    true

    false

    query

    truefalse

    web.xml

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    31/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com31

    dbqueryuri

    /WEB-INF/dbquery.tld

    Enter SELECT

    /*http://localhost:7001/dbquery/DBQueryTest.htmlhttp://localhost:8080/dbquery/DBQueryTest.html

    SELECT * FROM emp

    O/P:

    EMPNO ENAME DeptNo

    ---------------------------------------2 |XYZ |20 |---------------------------------------

    1 |ABC |10 |---------------------------------------

    */

    "## $" % "&

    '

    !"

    #$!"%!"

    &!"!"

    "

    ()*+!

    (,!(,--!(.!

    ()!

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    32/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com32

    (/,!

    (/.!

    // TransferMoneyTag.java

    package bank;import javax.servlet.jsp.*;

    import javax.servlet.jsp.tagext.*;

    import java.io.*;

    import javax.sql.*;

    import java.sql.*;

    import javax.naming.*;

    import java.util.*;

    public class TransferMoneyTag extends TagSupport

    {

    JspWriter out;

    Hashtable ht;

    Context ctxt;

    DataSource ds;

    Connection con;Statement stmt;

    private String datasource, table;

    public int source, dest;

    public double amt;

    boolean flag;

    public void setDatasource(String ds)

    {

    datasource=ds;

    }

    public void setTable(String t)

    {

    table=t;}

    public int doStartTag() throws JspException

    {

    try

    {

    out=pageContext.getOut();

    out.println("");

    }

    catch(Exception e){}

    return EVAL_BODY_INCLUDE;

    }// doStartTag()

    public int doAfterBody() throws JspException

    {try

    {

    ht=new Hashtable();

    ht.put(Context.INITIAL_CONTEXT_FACTORY,

    "weblogic.jndi.WLInitialContextFactory");

    ht.put(Context.PROVIDER_URL, "t3://localhost:7001");

    ctxt=new InitialContext(ht);

    ds=(DataSource)ctxt.lookup(datasource);

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    33/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com33

    con=ds.getConnection();

    stmt=con.createStatement();

    pageContext.setAttribute("CONN", con, pageContext.PAGE_SCOPE);

    int i=stmt.executeUpdate("update "+table+" set bal=bal-"+amt+" where

    accNo="+source);

    int j=stmt.executeUpdate("update "+table+" set bal=bal+"+amt+" where

    accNo="+dest);

    if(i==1 && j==1)

    flag=true;

    else

    flag=false;

    stmt.close();

    out.println("TX successful");

    }// try

    catch(Exception e){e.printStackTrace();}

    return SKIP_BODY;

    }// doAfterBody()

    public int doEndTag() throws JspException

    {

    out.println("");if(flag)

    return EVAL_PAGE;

    else

    return SKIP_PAGE;

    }// doEndTag()

    }// class

    // SourceTag.java

    package bank;

    import javax.servlet.jsp.*;

    import javax.servlet.jsp.tagext.*;

    public class SourceTag extends BodyTagSupport

    {

    public int doStartTag() throws JspException

    {

    Tag tag=getParent();

    TransferMoneyTag tmtag=(TransferMoneyTag)tag;

    tmtag.source=value;

    return SKIP_BODY;

    }// doStartTag()

    int value;

    public void setValue(int v)

    {

    value=v;

    }

    }// class

    // AmtTag.java

    package bank;

    import javax.servlet.jsp.*;

    import javax.servlet.jsp.tagext.*;

    public class AmtTag extends BodyTagSupport

    {

    private double value;

    public void setValue(double v)

    {

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    34/37

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    35/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com35

    }// if()

    }// try

    catch(Exception e)

    {

    e.printStackTrace();

    }// catch()

    return SKIP_BODY;

    }// doStartTag()

    }// class

    transferMoney

    bank.TransferMoneyTag

    JSP

    datasource

    true

    false

    table

    true

    false

    source

    bank.SourceTag

    empty

    value

    true

    false

    amt

    bank.AmtTag

    empty

    value

    true

    false

    dest

    bank.DestTag

    empty

    value

    true

    false

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    36/37

    ActiveNET

    JSP chapter

    Digital Book www.activenetindia.com36

    balance

    bank.BalanceTag

    empty

    accNo

    true

    false

    tm-uri

    /WEB-INF/tm.tld

    Ninth application

    Source

    Amount

    Dest

  • 8/3/2019 Java Server Pages Doc 18 July 2007

    37/37

    ActiveNET

    JSP chapter

    http://localhost:7001/tm/TransferMoneyForm.html