java server pages doc 18 july 2007
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