?? 5.mht
字號:
color=3D#2a00ff>"PASSWD"</FONT><FONT =
color=3D#000000>);</FONT></FONT></FONT>
<FONT face=3DSans><FONT style=3D"FONT-SIZE: 11pt" size=3D2><FONT =
color=3D#000000>System.out.println(</FONT><FONT color=3D#2a00ff>"Reply =
from Server: Your userid is "</FONT> <FONT color=3D#000000>+</FONT> =
<FONT color=3D#000000>userID</FONT> <FONT =
color=3D#000000>);</FONT></FONT></FONT>
<FONT face=3DSans><FONT style=3D"FONT-SIZE: 11pt" size=3D2><FONT =
color=3D#000000>CustomerData</FONT> <FONT color=3D#000000>cd</FONT> =
<FONT color=3D#000000>=3D</FONT> <FONT =
color=3D#000000>myBean.getCustomerData(userID);</FONT> </FONT></FONT>
<FONT face=3DSans><FONT style=3D"FONT-SIZE: 11pt" size=3D2><FONT =
color=3D#000000>System.out.println</FONT> <FONT =
color=3D#000000>(</FONT><FONT color=3D#2a00ff>"Andy your details with =
MyStore are "</FONT> <FONT color=3D#000000>+</FONT> <FONT =
color=3D#000000>cd</FONT> <FONT =
color=3D#000000>);</FONT></FONT></FONT></PRE>
<P><IMG height=3D444=20
src=3D"http://www.tusc.com.au/tutorial/images/chap5/TesTClientCode.png" =
width=3D456=20
align=3Dleft border=3D0 name=3DGraphic33><BR clear=3Dleft><BR><BR></P>
<H3>Test your Client :</H3>
<P style=3D"MARGIN-BOTTOM: 0in"><B>Now, in order to test your client, =
Select=20
SessionBMPClient node > Go at top level menu and select the 'Man =
running'=20
icon</B>.</P>
<P><B>On that select 'Run as' > select Java Application, as shown=20
below.</B></P>
<P><IMG height=3D366=20
src=3D"http://www.tusc.com.au/tutorial/images/chap5/TesTClientRun.png" =
width=3D586=20
align=3Dleft border=3D0 name=3DGraphic35><BR clear=3Dleft><BR><BR></P>
<P><B>Now under your console, if your reply for 'ANDY' is 'U2', and his =
details=20
for CustomerID are 'C2' as well, then your call is successful (see=20
below)</B>.</P>
<P><IMG height=3D49=20
src=3D"http://www.tusc.com.au/tutorial/images/chap5/TesTClientResult.png"=
=20
width=3D682 align=3Dleft border=3D0 name=3DGraphic34><BR =
clear=3Dleft><BR><BR></P>
<H3>Exercise :</H3>
<P>Here is an exercise for you. To progress further, implement Manager =
as a BMP=20
Entity bean similar to Customer, with the same behaviours. The detailed =
tasks=20
are given below.</P>
<OL>
<LI>
<P style=3D"MARGIN-BOTTOM: 0in">Create a BMP Bean named Manager under =
package=20
au.com.tusc.bmp.</P>
<LI>
<P style=3D"MARGIN-BOTTOM: 0in">Create a DAO class named =
ManagerDAOImpl under=20
package au.com.tusc.dao.</P>
<LI>
<P style=3D"MARGIN-BOTTOM: 0in">Add all attribute/properties in =
ManagerBean, add=20
accessor and mutator methods for each attribute. </P>
<LI>
<P>Add a find method named ejbFindByPrimaryKey with signature </P>
<P><B><FONT color=3D#000000>public ManagerPK</FONT> <FONT=20
color=3D#000000>ejbFindByPrimaryKey</FONT> <FONT =
color=3D#000000>(MangerPK</FONT>=20
<FONT color=3D#000000>pk)</FONT> throws F<FONT=20
color=3D#000000>inderException.</FONT></B></P>
<LI>
<P>Add a find method named ejbFindByUserID with signature</P>
<P><B><FONT color=3D#000000>public MangerPK</FONT> <FONT=20
color=3D#000000>ejbFindByUserID</FONT> <FONT color=3D#000000>(String=20
userID)</FONT> throws F<FONT color=3D#000000>inderException</FONT> =
</B></P>
<LI>
<P>Add a business method named getManagerData with signature</P>
<P><FONT color=3D#7f0055><B><FONT color=3D#000000>public =
ManagerData</FONT> <FONT=20
color=3D#000000>getManagerData()</FONT></B></FONT></P>
<LI>
<P>Implement methods in ManagerDAOImpl class. Lookup string required =
for JNDI=20
API is <FONT face=3DSans><FONT=20
color=3D#2a00ff>"java:comp/env/jdbc/DefaultDS".</FONT></FONT></P>
<LI>
<P>Deploy Manager Bean.</P>
<LI>
<P>Add a field in StoreAccess Bean to store reference after lookup in =
JNDI for=20
Manager</P>
<P><B><FONT color=3D#000000>private ManagerLocalHome</FONT> =
manager<FONT=20
color=3D#000000>LocalHome</FONT>;</B></P>
<LI>
<P>In ejbCreate method of StoreAccess Bean store reference in =
managerLocalHome=20
variable by invoking getLocalHome static method in ManagerUtil.</P>
<LI>
<P>Add a business method in StoreAccess Bean.</P>
<P><B><FONT color=3D#000000>public MangerData</FONT> <FONT=20
color=3D#000000>getManagerData(String userID) </FONT></B></P>
<LI>
<P><FONT color=3D#000000>Add the following tags for deployment at =
class level=20
for linking/referencing Manager.</FONT></P><PRE><FONT =
color=3D#000000><FONT face=3DSans><FONT size=3D3><FONT =
color=3D#3f5fbf>1. @ejb.ejb</FONT><FONT color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>ref</FONT> <FONT color=3D#3f5fbf>ejb</FONT><FONT =
color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>name=3D"Manager"</FONT></FONT></FONT></FONT>
<FONT size=3D3><FONT face=3DSans><FONT =
color=3D#3f5fbf>view</FONT><FONT color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>type=3D"local"</FONT></FONT></FONT>
<FONT size=3D3><FONT face=3DSans><FONT =
color=3D#3f5fbf>ref</FONT><FONT color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>name=3D"ManagerLocal"</FONT></FONT></FONT>
=20
<FONT face=3DSans><FONT size=3D3><FONT color=3D#3f5fbf>2.</FONT> <FONT =
color=3D#3f5fbf>@jboss.ejb</FONT><FONT color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>ref</FONT><FONT color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>jndi</FONT> <FONT color=3D#3f5fbf>ref</FONT><FONT =
color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>name=3D"ManagerLocal"</FONT></FONT></FONT>
<FONT size=3D3><FONT face=3DSans><FONT =
color=3D#3f5fbf>jndi</FONT><FONT color=3D#7f7f9f>-</FONT><FONT =
color=3D#3f5fbf>name=3D"ManagerLocal"</FONT> </FONT></FONT></PRE>
<LI>
<P><FONT color=3D#000000>Test your Manager Bean by running your Test =
Client=20
created for Customer named SessionBMPClient.</FONT></P></LI></OL>
<P><FONT color=3D#800000><I>Note : Don't forget to fix the generated =
descriptors=20
in jboss.xml as mentioned above in relation to Customer =
Bean.</I></FONT></P>
<P><FONT color=3D#800000><I>Note : All these steps are the same as those =
for=20
Customer. Implement this Bean which will be used in subsequent=20
chapters.</I></FONT></P>
<P><FONT color=3D#800000><I>In case you're unable to do that, we have =
provided=20
ManagerBean, ManagerDAOImpl, modified StoreAccessBean and modified=20
SessionBMPClient classes. You can download these files from downloads=20
below.</I></FONT></P>
<P align=3Dleft><FONT color=3D#800000><I>Downloads :</I></FONT></P>
<P align=3Dleft><A=20
href=3D"http://www.tusc.com.au/tutorial/data/chap5/ManagerBean.java"><I><=
FONT=20
color=3D#0047ff>ManagerBean</FONT></I></A></P>
<P align=3Dleft><A=20
href=3D"http://www.tusc.com.au/tutorial/data/chap5/ManagerDAOImpl.java"><=
I><FONT=20
color=3D#0047ff>ManagerDAOImpl</FONT></I></A></P>
<P align=3Dleft><A=20
href=3D"http://www.tusc.com.au/tutorial/data/chap5/StoreAccessBean.java">=
<I><FONT=20
color=3D#0047ff>StoreAccessBean</FONT></I></A></P>
<P align=3Dleft><A=20
href=3D"http://www.tusc.com.au/tutorial/data/chap5/SessionBMPClient.java"=
><I><FONT=20
color=3D#0047ff>SessionBMPClient</FONT></I></A></P>
<P align=3Dleft><BR><BR></P>
<P style=3D"MARGIN-BOTTOM: 0in"><BR></P>
<TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%" border=3D0>
<THEAD>
<TR vAlign=3Dtop>
<TD width=3D"33%"><A =
href=3D"http://www.tusc.com.au/tutorial/html/chap4.html"=20
name=3DChapter3><IMG height=3D35=20
src=3D"http://www.tusc.com.au/tutorial/images/PrevArrow.png" =
width=3D51=20
align=3Dleft border=3D0 name=3DGraphic15><BR =
clear=3Dleft></A></TD>
<TD width=3D"33%">
<P align=3Dcenter><A name=3D"Table of Contents"></A><A=20
href=3D"http://www.tusc.com.au/tutorial/html/index.html"=20
name=3D"Table of Contents"><IMG height=3D34=20
src=3D"http://www.tusc.com.au/tutorial/images/TOC.png" width=3D51 =
align=3Dbottom=20
border=3D0 name=3DGraphic2></A></P></TD>
<TD width=3D"33%"><A =
href=3D"http://www.tusc.com.au/tutorial/html/chap6.html"=20
name=3DChapter6><IMG height=3D36=20
src=3D"http://www.tusc.com.au/tutorial/images/NextArroww.png" =
width=3D49=20
align=3Dright border=3D0 name=3DGraphic52><BR =
clear=3Dright></A></TD></TR></THEAD>
<TBODY></TBODY></TABLE>
<P align=3Dcenter><IMG height=3D2=20
src=3D"http://www.tusc.com.au/tutorial/images/blurulr6.gif" width=3D796 =
align=3Dbottom=20
border=3D0 name=3DGraphic56></P>
<TABLE cellSpacing=3D0 cellPadding=3D4 width=3D"100%" bgColor=3D#0a6a91 =
border=3D0>
<COLGROUP>
<COL width=3D51>
<COL width=3D74>
<COL width=3D69>
<COL width=3D62>
<TBODY>
<TR>
<TD width=3D"20%">
<P><!-- Footer --><A href=3D"http://www.tusc.com.au/"><IMG =
height=3D73=20
alt=3DTUSC =
src=3D"http://www.tusc.com.au/tutorial/images/header/logo.gif"=20
width=3D149 align=3Dbottom border=3D0 name=3DGraphic1></A> =
</P></TD>
<TD width=3D"29%">
<P align=3Dleft><IMG height=3D73 alt=3D"Reliable, On-Time =
Delivery."=20
src=3D"http://www.tusc.com.au/tutorial/images/header/reliable.gif" =
width=3D267=20
align=3Dbottom border=3D0 name=3DGraphic2> </P></TD>
<TD width=3D"27%">
<P align=3Dleft><!--copyright details--><FONT =
color=3D#ffffff>Copyright 2003=20
TUSC Pty. Ltd.</FONT> </P></TD>
<TD width=3D"24%"></TD></TR></TBODY></TABLE><!-- footer finishes =
--></BODY></HTML>
------=_NextPart_000_00F3_01C4DAC1.4635A2C0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.tusc.com.au/tutorial/images/header/tuscJ2eeLogo.gif
R0lGODlhlQB9AIcAAAErQgE1SwdafCVQYzJtd0x9aQlliwBhkQBmmQBqkQVqkQRomgpqkQhqnAxt
nRhlghBvnxRyoRh0ohx2pCBxgiB5pSR7pyh+qUZ1iWiFWSyAqjCCrDSFrTiHrzyKsUCMskSOtEiR
tUyTt1CWuVSYuliavFydvWmKmGCfv2SiwWikwmymxHCpxXywyrudKYmPReuqDIumsaC0vIO0zYe3
z4u50I+70pO+05/F2KPH2qfK26vM3a/P37fHzbPR4LfT4rvW47/Y5fDTjP/jo//quMrV2sPb58fd
6Mvf6tPd4c/i69Pk7dfn79vk69vp8N/r8uPq7ePu8+nv8Ofw9evz9+/1+PP3+vb4+Pf6+/v8/f//
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAACVAH0A
AAj/ABEIHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKRMCgpMmTKFOqXMmypcuS
ChIkeOlS5kyWMg/oTHDAZk8FOHuivKmzqFGaSJMqrXlz6cmYCYCuhOrTJs+mKRXoHGrS6FGnYMMy
xQrWZsuqVq9KVXkV5YGSPL2+FUu3LkyZdc3izMm3b9C5XbvKtUs4LFS7eleiTUt26NaTgAcXnqwU
b17Livv2TMtSK2C4kL9SHj32ctS9cRljZvs4sODWpGOnTCyW9uzUVhlQIFCgAAEKs3WuZYBVtOzj
JleHtT2UMYUML2BIl+4iA/CTcbm+Rs4d7unLw1FS/01AIToMFy/Sv3BBvQB24dpLwu4eW/ly+9hn
Rq9OgLhZAua5l9x8xEFGH3LMOUUVTgS4UJ1/jJWUgXTXEbfTUOEdKNthiOEnIQwvPKCaTVJN+MJ7
n4GmYXceLgVVhuW5UMCInJXEXn9wFTXbitzJlGFZylHgIHA0UiVVATBkgGJjKfJIGYcdNtXgid6p
BpReQrrwlI4pNelkYS0updeUzalWZUnrOUZggV+OFtNkNglJ5VMjJofXhMGt2SZp3xFGHnqZmQkh
A0jmqeeecDZG1wtKBsqYVDY1yBqXdhlg6aWYZqopSpp26imnBiTg6aigXlpABqGOiltuDEAl6aSH
Jv8lAAEY1GrrrbjiKoABDBggQK7AAkuAACXNGuyxtj7AKwO/3voCBrQiW6sAEfr3qqGx0oSBFtx2
6+234PZArAAygGuuuVdgwOsDTZzrbrdFEGvACd9e8e63MVBrFaTXYutlUvTe624SxD7Qg8DunsDr
tudK0QQU9porRX/k3gtFE1KYS3C1CvQrXlwXhhWwFlfEYPLJKJ/cLrfxMmAwyTKgnMS3PaBcBLcK
M4BBxN72cAIBAwxAwAkyQPHtxL2Wa24RJ2AQNK0nHAyvADtddVMBLijqnVcidytFAAAEIPbYY4ct
tRYtvwzFAGEDAIDS3KYbNtgx4LwwzySfALbbfAf/MEDdXvdnANzdQqE334gPkDHLVFdtVgEvtJgT
pUuN/DXZmIMdwNlpHywF22K/7a3cYwOe887enjB35gAAzi3Sg39bBOisD2A040WlpQB0YYL870uW
77166G5vPrXLntMuereki2363d32oDnxbdvuLeyEzz482QBYzzjIfTGa4IDZsmR50EFjjj4BNzOO
vBafz7183Bis/rzOPKtONgZN03204HC7AgGGV7y9eQ9t1DKKWV5QgBd1JjtgGZkWmpCEJvRgAGUr
WgV51jn4KY9wzQvA/VDHrfqFjgCL89niApe0bslge1ErQs38djsETm4nBwAQkcIUk9+5RILdSoLy
/87mrQ7GL3QgNKHz7Ia/bimxez3A29Ee0EKSDZBsMcBbDzBQw5bdsCeQm8mCHtg1cGkvdEQ83suO
CLYk2o+JJNSCEseGgRgUQYpagEJ/MqC02ZUtjl4rIrGgkjvxXclHsQEiy4a4tIIlT35uLB0ceRaD
7RUPA+3rVhN+8wKlyYB7aWzk1nRiABdQwDLjq4si0cZIMzrSg5Ac3RxHyLMm0I57ZvPWJjNQAMBV
cmwDmBnJhCCEIRjzmEMQQgaWSYDJAchq4yHNKs8ItlAi8H1snB/JZjnJImIgc6E7YBMg9wBfDk+Y
VygmEdbJTiIoszcMzAkDc1clrYllmq2U3SvXFv9Lr92SlvViGgYJCDcoMKqc3Ppk2aypz5KUp5nl
eYBRFEBRVhUGn/KzZgf5GTrXeRCL3UTXFrnnOoMqq48YPCEek8BBYpUEcgxYpld8ZKTJYBSNonxZ
8wDAMG5JD6RaOB3eZEA4jvqPW+NkltIEOLwT1LBkBOiiSxlAACXFc6ZiTKVTblrNnEpNf2M7QREs
SADMtU+oQcSgWK8ghRhgDm7YcyHmuke0GNTvgC0rSVXJaSEFAmWMduEqADT6Si28kHvpW133IoZW
nPWNAGU1q9eoGDv6ERBx3ZOqSarKS/LRE0J9uufSUtpVV74PflfkHi7h1lhq7o17J+BZXDWZ2tr/
aVZC6KkQA+RykxqJ1oygcxthT8vKAuISALHtVmOlZ9yydU+YrwPgt5pQv+aCDa8uLYAQiDCn1+xE
KuP5EVLwuVCveisJ3xRe8QYgA7w19gpbHGjiTrAyFlZ2dDIoK2YDgMLjEWq73c2RAnvr28pJrAcy
6AGCV3jewjIvCTE4gYQl3AMGw7FeEJ7wCeyIx9mCSwo103APanhNG5kSVlW7i1ZbskqEXfNlLgZX
zvobY29BgbIerbEWxIXbRqmEt5BaMUsEUNeUGfnIBOCVAQhw5CajTAYncCmRY+bkIxMVAy4tZ5Wr
LNEEAOhUfxnwXXzoEgGY+cxoTrOal9UrNbv5/80n8dWb3/yAFyT5JHPOs5nxwsCqnoW3N3kToniE
FxfgyE/Q6ViA/aUX8Q76ODIRkm7r0qBmAuglvquaox8NaUkXps4zeihNvrgZsVCgN6hOtapXzepW
u/rVsE71hHgZ61qvB54z2rSKsRoWzi7z18AOtrCHTexiG/vYy4wOspedAQf9+pSIxHSm7clp2TRo
0mDBWoUKfJZMV3tFSML2UrAmIJPUdNS++7aGCACDcmdbRio5N7rLp+7JACos5O52mIJT7wM5iNos
ybdLoNRvdUeHALpOSbPdPXCAF9xJ7I5cUmJ06KQ4/OErYs+MaIK1EysI499mNwya2RIAgYguCf8H
+YEmlKSohAdy52F4WVTOafPwZzeQY8+DwETzR2NtOkCH92gu3nPunOrXBRA3YQRd9EFblDRMb/qe
nu6mlEsdQUIWS9Sv7iTAQp3oXI+NAyFt9bAPfd8dMruTsl6XsqsdTGifzEjmTve62/3ueM+73vfO
9777/e+AD7zgB0/4whv+8IhPvOIXz/jGO/7xkI+85CdP+cpb/iHcunzfgeAAgmjBIpkviLcEMgMj
ZAELRuiAQMC1+m8ZJPSY/3xCYP+QEhxBC0rwAOiZUIGByJ4itPe87LVggwWIQAtRaP3rf3+Q4O+d
BxHgAPJB74Mp6B4BsncADqqgBSSoHgHa577/9wUiASDg3vnKR4AEBBIBLVAh/cKf/ei5tQImyD4K
3HLCCNLPLRpYwQoowH9a4H8ASH5B0H205wBagAWg5wBGgAUlgH0CgQNasAEXoAVMMIEVeIEZiAA8
oAUq0ADoh33MtwA6kAX7R4Kjp4Ldsny+t4ICsQHuJ4AWIIPvR4KtV4MziAA+AIIi+HsQsANaYAKg
B35GoAUtIHtW4HoIsIQriAVa0AA42Hy/5wBCyAIv6ILy94ITMBAWkANOkAWhN4bDV4YCKBBQKIWw
t4Q
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -