-
Escribir Aplicaciones Avanzadas para la PlataformaJavaTMComo desarrollador experimentado sobre la plataforma Java TM, indudablementesabes lo rpido que evoluciona esta plataforma. Sus muchos Interfaces deProgramacin de Aplicaciones (APIs) proporcionan una gran cantidad defuncionalidades para todos los aspectos de la programacin de aplicaciones y nivelde sistema. Los desarrolladores del mundo real nunca usan uno o dos APIs pararesolver un problema, sino que juntan la funcionalidad clave de la expansin devarios APIs. Conocer los APIs que necesitas, qu parte de esos APIs necesitas, ycomo los APIs funcionan juntos para crear la mejor solucin puede ser una tareaintimidatoria.
Para ayudarte a navegar por los APIs de Java y acortar el tiempo de desarrollo detus proyectos, esta seccin incluye las fases de diseo, desarrollo, prueba ydespliegue para una aplicacin de subastas. Durante esta aplicacin de ejemplo, nocubriremos cada posible escenario de programacin, explora muchas situacionescomunes y la discusin te dejar con una metodologa slida para disear yconstruir tus propias soluciones.
Esta seccin es para desarrolladores con un nivel un poco alto de entendimiento dela escritura de programas Java. El ejemplo est escrito con los APIs de laplataforma Java 2 y explica en trminos de funcionalidad el cmo y el por qu,por eso, si necesitas ayuda para instalar la plataforma Java, configurar tu entorno,o conseguir que tu primera aplicacin funcione, primero deberas leer las seccionesanteriores de este tutor...
ndice de ContenidosConcordar los Requerimientos del Proyecto con la Tecnologa
Requerimientos del Proyecto
Elegir el Software
La Aplicacin Casa de Subastas
Una Aplicacin Multi-Fila con JavaBeans
Beans de Entidad y Sesin
Examinar un Bean de Manejo de Contenedor
Mtodos de Bsqueda de Manejo de Contenedor
Manejo de Datos y Transaciones
Persistencia del Bean
Manejar Transaciones
-
Mtodos de Bsqueda de Manejo del Bean
Clculo Distribuido
Servicios de Bsqueda
RMI
CORBA
Tecnologa JDBC
Servelts
Tecnologa JNI
Ejemplos JNI
Strings y Arrays
Otros Problemas de Programacin
Proyecto Swing: Construir un Interface de Usuario
Componentes y Modelos de Datos
El API de Impresin
Impresin Avanzada
Depuracin de Applets, Aplicaciones y Servlets
Recoleccin de Evidencias
Ejecutar Tests y Analizar
Depurar Servlets
Depurar Eventos AWT
Analizar la Pila
Problemas de Versiones
Tcnicas de Rendimiento
Aumentar el Rendimiento por Diseo
Trucos de Conexin
Caractersticas de Rendimiento y Herramientas
Anlisis de Rendimiento
Enlazar Aplicaciones Cliente/Servidor
Desarrollar la Aplicacin Subasta
Archivos JAR
Plataforma Solaris
Plataforma Win32
Ms Tpicos de Seguridad
-
Appelts Firmados
Escribir un Controlador de Seguridad
Apndice A: Seguridad y Permisos
Apndice B: Clases, Mtodos y Permisos
Apndice C: Mtodos de SecurityManager
Eplogo
Ozito
-
Concordar los Requerimientos del Proyecto con laTecnologaEl desafo de escribir un libro sobre el desarrollo de una aplicacin avanzada para laplataforma JavaTM es encontrar un proyecto lo suficientemente pequeo, pero almismo tiempo, los suficientemente completo para garantizar las tecnicas deprogramacin avanzadas.
El proyecto presentado en este libro es una casa de subastas basada en web. Laaplicacin est inicialmente escrita para la plataforma Enterprise JavaBeansTM. Enlos captulos posteriores expandieremos el corazn del ejemplo descrito aquaadiendo funcionalidades avanzadas, mejoras y soluciones alternativas a algunasde las cosas que obtendrs gratis cuando use la plataforma Enterprise JavaBeans.
Para mantener la explicacin sencilla, la aplicacin de ejemplo slo tiene unconjunto bsico de transaciones para poner y pujar tems a subasta. Sin embargo,la aplicacin escala para manejar mltiples usuarios, proporciona un entorno detres filas basado en transaciones, controla la seguirad, e integra sistemas basadosen la legalidad. Este captulo cubre cmo determinar los requerimientos delproyecto y el modelo de aplicacin -- pasos importantes que siempre deberanrealizarse antes de empezar a codificar.
Requerimientos de Proyecto y Modelado
Elegir el Software
Tienes Prisa?Esta tabla te enlaza directamente con los tpicos especficos.
Tpico SeccinDemostracin de Subasta La Subasta de DukeRequerimientos del Proyecto Entrevista Base
Modelar el ProyectoModelado La Casa Identifica Compradores y Vendedores
La Casa Determina la Mayor PujaLa Casa Notifica a Compradores y VendedoresAlguien Busca un temAlguien Ve un tem en VentaAlguien Ve los Detalles de un temEl Vendedor Pone un tem en VentaEl Compador Puja por temsDiagrama de Actividad
-
Elegir el Software Los APIs de JavaTM
Ozito
-
Req
uerim
ient
os d
el P
roye
cto
y M
odel
ado
El prim
er p
aso p
ara
det
erm
inar
los
requer
imie
nto
s del
pro
yect
o e
s la
entr
evis
ta c
on e
l usu
ario
bas
e par
a sa
ber
que
se e
sper
a de
una
subas
ta o
n-l
ine.
Est
e es
un p
aso im
port
ante
, y
no p
ued
e pas
arse
por
alto
porq
ue
es u
na
bas
e s
lida
de
info
rmac
in q
ue
nos
ayudar
a
def
inir las
cap
acid
ades
cla
ve d
e nues
tra
aplic
acio
n.
El ca
ptulo
2 p
asea
a t
rav
s del
cdig
o d
e la
aplic
aci
n,
explic
a co
mo t
rabaj
a la
pla
tafo
rma
Ente
rprise
Jav
aBea
ns,
y n
os
cuen
ta c
m
o e
jecu
tar
una
dem
ost
raci
n e
n v
ivo.
Si nunca
has
vis
to o
usa
do u
na
subas
ta o
n-l
ine,
aqu hay
una
maq
uet
a de
las
pg
inas
HTM
L de
la a
plic
aci
n d
e ej
emplo
.
Entr
evis
ta a
l usu
ario
Bas
e
Model
o d
e Pr
oye
cto
Entr
evis
ta a
l usu
ario
Bas
ePo
r la
dic
usi
n y
por
man
tener
las
cosa
s se
nci
llas,
est
a ex
plic
aci
n a
sum
e que
en las
entr
evis
tas
con los
usu
ario
s bas
e se
enco
ntr
aron los
siguie
nte
s re
quer
imie
nto
s par
a la
cas
a de
subas
tas:
Req
ueri
mie
nto
s d
e la C
asa
de S
ub
ast
as
Info
rmac
in N
eces
aria
del
Com
pra
dor
y Ven
ded
or
Nota
s de
Ven
ded
ore
s par
a post
ear
tem
s
Gra
bar
e I
nfo
rmar
de
las
tran
saci
ones
dia
rias
Req
ueri
mie
nto
s d
el u
suari
oPu
jar
por
o V
ender
un te
m
Busc
ar o
ver
te
ms
en v
enta
Notifica
r la
s ve
nta
s al
ven
ded
or
y al
com
pra
dor
Mo
delo
de
Proy
ecto
Des
pus
de
anal
izar
los
requer
imie
nto
s, p
odem
os
const
ruir u
n d
iagra
ma
de
flujo
de
la a
plic
aci
n p
ara
obte
ner
un m
ejor
ente
ndim
iento
de
los
elem
ento
s nec
esar
ios
en la
aplic
aci
ny
cm
o inte
ract
ua.
Un d
iagra
ma
de
flujo
mues
tra
la r
elac
in e
ntr
e lo
s ac
tore
s y
pro
ceso
s den
tro d
el s
iste
ma.
Un p
roce
so e
s una
funci
n
nic
a en
un s
iste
ma,
y u
n a
ctor
es la
per
sona
o s
oft
war
e que
real
iza
la a
cci
n o
pro
ceso
. Po
r ej
emplo
, un c
om
pra
dor
es e
l ac
tor
que
real
iza
la f
unci
n (
pro
ceso
) de
puja
r por
un te
m d
e la
subas
ta,
y el
ven
ded
or
es e
l ac
tor
que
real
iza
elpro
ceso
de
post
ear
un te
m p
ara
su s
ubas
ta.
Aunque,
no t
odos
los
acto
res
son p
erso
nas
. Po
r ej
emplo
, el
soft
war
e es
el ac
tor
que
det
erm
ina
cuan
do u
n te
m s
e ha
cerr
ado,
encu
entr
a la
puja
ms
alta,
y n
otifica
la
venta
al
com
pra
dor
y al
ven
ded
or.
ElU
nifie
d M
odel
ing L
anguag
e (U
ML)
es
la h
erra
mie
nta
que
se u
sa p
ara
los
dia
gra
mas
de
pro
ceso
s. E
l si
guie
nte
dia
gra
ma
usa
UM
L par
a des
crib
ir los
pro
ceso
s del
com
pra
dor
y del
vended
or
par
a una
aplic
aci
n d
e su
bas
ta o
n-l
ine.
En U
ML,
los
sist
emas
se
agru
pan
en c
uad
rados,
los
acto
res
se r
epre
senta
s por
figura
s hum
anas
, lo
s pro
ceso
s se
den
ota
n m
edia
nte
va
los,
y las
ln
eas
mues
tran
com
o los
acto
res
usa
n e
l si
stem
a.
-
La s
iguie
nte
des
crip
cin d
efin
e el
pro
yect
o.
Est
as d
escr
ipci
ones
no s
on p
arte
del
UM
L, p
ero s
on u
na
her
ram
ienta
til par
a la
def
inic
in d
e pro
yect
os.
La C
asa
Iden
tific
a a
Com
prad
ores
y V
ende
dore
s
Una
aplic
aci
n d
e su
bas
tas
es u
sada
por
com
pra
dore
s y
vended
ore
s. U
n c
om
pra
dor
nec
esita
saber
que
n e
s el
ven
ded
or
a quie
n t
iene
que
pag
arle
, y
el v
ended
or
nec
esita
conoce
r a
los
com
pra
dore
s par
a re
sponder
a s
us
pre
gunta
s so
bre
el pro
duct
o y
par
a final
izar
la
venta
. Po
r es
o,
par
a post
ear
o p
uja
r por
un te
m d
e la
subas
ta,
los
com
pra
dore
s y
vended
ore
snec
esitan
est
ar r
egis
trad
os.
El re
gis
tro n
eces
ita
obte
ner
la
siguie
nte
info
rmac
in s
obre
los
com
pra
dore
s y
vended
ore
s:U
ser
ID y
pas
sword
par
a co
mpra
r y
vender
.
Direc
cin d
e E-m
ail par
a que
pued
a co
munic
arse
le la
puja
ms
alta
cuan
do s
e ci
erre
la
subas
ta.
Info
rmac
in d
e la
tar
jeta
de
crd
ito p
ara
que
la c
asa
de
subas
tas
pued
a co
bra
r al
ven
ded
or
por
lista
r su
s tem
s.
Una
vez
regis
trad
o,
el u
suar
io p
ued
e post
ear
o p
uja
r por
un te
m e
n v
enta
.
La C
asa
Dete
rmin
a la
Puja
ms
alta
La a
plic
aci
n d
e su
bas
tas
hac
e co
nsu
ltas
a la
bas
e de
dat
os
y gra
ba
e in
form
a de
las
tran
saci
ones
dia
rias
. La
aplic
aci
n b
usc
a tem
s que
se h
an c
erra
do y
det
erm
ina
la p
uja
ms
alta
.
La C
asa
Notit
ica
a lo
s Co
mpr
ador
es y
Ven
dedo
res
La a
plic
aci
n s
ubas
ta u
sa e
l e-
mai
l par
a notifica
r al
que
ha
puja
do m
s a
lto y
al ve
nded
or,
y c
obra
rle
al v
ended
or
por
los
serv
icio
s.
Alg
uien
Bus
ca u
n te
mLo
s co
mpra
dore
s y
vended
ore
s in
troduce
n u
n s
trin
g d
e bsq
ued
a par
a lo
caliz
ar t
odos
los
tem
s en
subas
ta d
e la
bas
e de
dat
os.
Alg
uien
Ve
los
tems
en V
enta
Para
popula
riza
r la
subas
ta y
conse
guir n
uev
os
vended
ore
s y
com
pra
dore
s, la
aplic
aci
n p
emite
que
cual
quie
ra v
ea los
tem
s de
la s
ubas
ta s
in r
equer
ir q
ue
est
reg
istr
ado.
Para
hac
er e
sto s
enci
llo,
la s
ubas
ta p
erm
ite
que
cual
quie
ra v
ea u
na
lista
de
los
tem
s de
alguna
de
esta
s tr
es f
orm
as:
Todos
los
tem
s en
subas
ta.
Nuev
os
tem
s lis
tados
hoy.
tem
s que
se c
ierr
an h
oy.
Alg
uien
Ve
los
Deta
lles
de u
n te
mLa
lis
ta s
um
ariz
ada
enla
za c
on la
siguie
nte
info
rmac
in d
etal
lada
de
cada
tem
. Est
a in
form
aci
n e
st
dis
ponib
le p
ara
cual
quie
ra s
in n
eces
idad
de
iden
tifica
cin.
Sum
ario
del
te
m.
Nm
ero d
el te
m e
n la
subas
ta.
Prec
io A
ctual
Nm
ero d
e puja
s
Fech
a de
pues
ta e
n s
ubas
ta
Fech
a de
cier
re d
el te
m
ID d
el v
ended
or
Puja
ms
alta
Des
crip
cin d
el te
m
El V
ende
dor P
oste
a te
ms pa
ra su
Ven
taPa
ra p
ost
ear
un te
m p
ara
su v
enta
, un v
ended
or
nec
esita
iden
tifica
rse
a s
mis
mo y
des
crib
ir e
l tem
, de
esta
form
a:U
ser
ID y
pas
sword
par
a la
iden
tifica
cin d
el v
ended
or
Des
crip
cin s
um
aria
de
tem
Prec
io d
e puja
inic
ial
Des
crip
cin d
etal
lada
del
te
m
Nm
ero d
e da
s que
el te
m e
star
en
la
subas
ta
El C
ompr
ador
Puja
por I
tems
Una
pg
ina
de
sum
ario
det
alla
do p
or
cada
tem
per
mite
a lo
s usu
ario
s re
gis
trad
os
iden
tifica
rse
a s
mis
mos
y puja
r por
el te
m p
roporc
ionan
do la
siguie
nte
info
rmac
in:
-
Use
r ID
Pass
word
Can
tidad
de
la P
uja
Dia
gram
a de
Act
ivid
ad
El dia
gra
ma
de
activi
dad
mues
tra
el f
lujo
de
tare
as d
entr
o d
e la
cas
a de
subas
tas
com
o u
na
tota
lidad
. Est
e dia
gra
ma
mues
tra
la a
plic
aci
n s
ubas
ta.
El c
rculo
neg
ro d
e la
izq
uie
rda
mues
tra
el p
rinci
pio
de
las
activi
dad
es,
y el
crcu
lo b
lanco
punte
ado e
n e
l ce
ntr
o d
enota
donde
term
inan
las
act
ivid
ades
.
-
Ozi
to
-
Elegir el SoftwareCon la aplicacin modelada y los requerimientos del proyecto definidos, es hora depensar en los APIs de JavaTM que vamos a usar. La aplicacin est claramentebasada en cliente y servidor porque queremos acomodar desde 1 hasta ncompradores, vendedores y mirones al mismo tiempo. Como el registro de losdatos de los tems en subasta deben almacenarse y recuperarse de algunamanejar, necesitares el API para acceder a bases de datos.
Los APIs de JavaTM
El corazn de la aplicacin se puede crear de muchas formas usando uno de lossiguientes aPIs:
APIs de Sockets, multithreads y JDBCTM.1.APIs de Remote Method Invocation (RMI) y JDBC.2.Plataforma Enterprise JavaBeansTM.3.
Enterprise JavaBeans proporciona una forma sencilla de crear aplicaciones declientes multi hilos porque maneja transaciones y control de estado, multithreads,recursos y otros complejos detalles de bajo nivel. La forma ms sencilla paracodificar la aplicacin de subastas es con la plataforma Enterprise JavaBeans.
El captulo 2 explica el cdigo del corazn de la aplicacin y como configurar yejecutar el ejemplo.
Ozito
-
Cdi
go d
e la
Apl
icac
in
de la
Cas
a de
Sub
asta
sLa
aplic
aci
n d
e ej
emplo
es
una
casa
de
subas
tas
bas
ada
en e
l W
eb y
esc
rita
par
a la
pla
tafo
rma
Ente
rprise
Jav
aBea
nsT
M.
El in
terf
ace
de
usu
ario
es
un c
onju
nto
de
pg
inas
HTM
Lque
obtien
en la
entr
ada
del
usu
ario
y le
mues
tran
la
info
rmac
in.
Det
rs
de
las
pg
inas
HTM
L h
ay u
n s
erve
lt q
ue
pas
a dat
os
entr
e el
nav
egad
or
y el
ser
vidor
Ente
rprise
Jav
aBea
ns.
Est
e se
rvid
or
man
eja
la lec
tura
y e
scritu
ra d
e la
bas
e de
dat
os.
-
Est
e ca
ptulo
des
crib
e el
cdig
o d
e la
aplic
aci
n,
cm
o f
unci
ona
con e
l se
rvid
or
Ente
rprise
Jav
aBea
ns,
y d
nde
obte
ner
est
e se
rvid
or
par
a ej
cuta
r el
eje
mplo
. O
, si
lo p
refier
es,
aqu
hay
una
maq
uet
a de
la a
plic
aci
n s
ubas
ta.
Una
Aplic
aci
n M
ulti.H
ilo c
on E
nte
rprise
Bea
ns
Bea
ns
de
Entidad
y d
e Ses
in
Exa
min
ar u
n B
ean d
e Conte
ned
or
Contr
ola
dor
Mt
odos
Busc
adore
s del
Conte
ndor
Contr
ola
dor
Tie
nes
Pris
a?Est
a ta
bla
contien
e en
lace
s direc
tos
a lo
s t
pic
os
espec
fic
os.
Tpi
coSe
cci
nU
na A
plic
aci
n M
ulti-
Hilo
con
Ent
erpr
ise B
eans
El E
nter
prise
Bea
ns D
efin
ido
Bea
ns d
e En
tidad
y d
e Se
sin
La C
asa
de S
ubas
tas F
unci
ona
Des
arro
llar y
Ejec
utar A
plicac
iones
Cm
o fu
ncio
nan
las a
plic
acio
nes M
ulti-
Hilo
?B
eans
de
Entid
ad y
de
Sesi
nEl
serv
elt A
uctio
nB
eans
Ent
ityB
eans
Ses
sion
Clas
es C
onte
nedo
rEx
amin
ar u
n Be
an d
e Co
nten
edor
Con
trola
dor
Var
iabl
es M
iem
bro
Mt
odo
Crea
teM
tod
os d
e Co
ntex
to d
e En
tidad
Mt
odo
Load
Mt
odo
Stor
eG
uard
ar la
Con
exi
nD
escr
ipto
r de
Des
arro
lloM
tod
os d
el B
usca
dor d
e Co
nten
edo
Cont
rola
dor
Auc
tionS
ervl
et.se
arch
Item
sB
idde
rBea
n.ge
tMat
chin
gIte
msL
istA
uctio
nIte
mH
ome.
findA
llMat
chin
gIte
ms
Auc
tionI
tem
Bean
Dep
loym
ent D
escr
ipto
r
Ozi
to
-
Un A
plic
aci
n M
ulti-
Fila
con
Bea
ns d
e En
terp
rise
La p
rolif
erac
in d
e ap
licac
iones
bas
adas
en inte
rnet
- e
intr
anet
- h
a cr
eado u
na
gra
n n
eces
idad
de
aplic
acio
nes
tra
nsa
cional
es d
istr
ibuid
as q
ue
aum
ente
la
velo
cidad
, se
guridad
yre
ndim
iento
de
la t
ecnolo
ga
del
lad
o d
el s
ervi
dor.
Una
form
a de
conse
guir e
stas
nec
esid
ades
es
usa
r un m
odel
o m
ulti-
fila
donde
una
peq
ue
a ap
licac
in c
liente
invo
ca lgic
a de
neg
oci
o q
ue
se e
jecu
ta e
n e
l se
rvid
or.
Norm
alm
ente
, la
s peq
ue
as a
plic
acio
nes
clie
nte
s m
ulti-
hilo
son d
ific
iles
de
escr
ibir p
orq
ue
se invo
lucr
an m
uch
as ln
eas
de
cdig
o intr
inca
do p
ara
man
ejar
la
tran
saci
n,
el c
ontr
ol de
esta
dos,
multithre
ads,
sola
pe
de
recu
rsos
y otr
os
det
alle
s co
mple
jos
de
baj
o n
ivel
. Y p
ara
rem
atar
est
as d
ific
ultad
es,
tenem
os
que
retr
abaj
ar e
ste
cdig
o c
ada
vez
que
escr
ibam
os
una
aplic
aci
n p
orq
ue
es t
an d
e baj
o n
ivel
que
no e
s re
utiliz
able
.
Si pudie
ram
os
usa
r un c
dig
o d
e m
anej
o d
e tr
ansa
ciones
pre
const
ruid
o p
or
alguie
n o
incl
uso
si pued
iera
mos
reutiliz
ar a
lgo d
e nues
tro p
ropio
cdig
o,
ahorr
aria
mos
much
o t
iem
po y
ener
ga
que
podram
os
utiliz
ar p
ara
reso
lver
otr
os
pro
ble
mas
. Bie
n,
la t
ecnolo
ga
Ente
rprise
Jav
aBea
nsT
M p
ued
e dar
nos
la a
yuda
nec
esar
ia.
Est
a te
cnolo
ga
hac
e se
nci
llas
de
escr
ibir
las
aplic
acio
nes
tra
nsa
cional
es d
istr
ibuid
as p
orq
ue
separ
a lo
s det
alle
s de
baj
o n
ivel
de
la lgic
a del
neg
oci
o.
Nos
conce
ntr
amos
en c
rear
la
mej
or
solu
cin p
ara
nues
tro n
egoci
o y
dej
amos
el r
esto
a la
arquitec
tura
ocu
lta.
Est
e ca
ptulo
des
crib
e c
mo c
rear
la
aplic
aci
n d
e su
bas
tas
del
eje
mplo
usa
ndo los
serv
icio
s pro
porc
ionad
os
por
la p
lata
form
a Ente
rprise
Jav
aBea
ns.
En los
siguie
nte
s ca
ptulo
sve
rem
os
com
o p
odem
os
per
sonal
izar
est
os
serv
icio
s e
inte
gra
r es
tas
cara
cter
stica
s en
aplic
acio
nes
exi
sten
tes
no E
JB.
Ente
rprise
Bea
ns
Def
inid
os
Peque
os
Progra
mas
Clie
nte
s
Arq
uitec
tur
Multi-
Hilo
Bea
ns
de
entidad
y d
e se
sin
La C
asa
de
Subas
tas
Funci
ona
Des
arro
llar
y Eje
cuta
r Aplic
acio
nes
Cm
o f
unci
onan
las
Aplic
acio
nes
multi-
hilo
?
Ente
rpris
e Be
ans
Defin
idos
Un B
ean E
nte
rprise
es
una
clas
e que
pro
porc
iona
dos
tipos
de
mt
odos:
lgic
a de
neg
oci
o y
cic
lo d
e vi
da.
Un p
rogra
ma
clie
nte
lla
ma
a lo
s m
todos
de
la lgic
a de
neg
oci
o p
ara
inte
ract
uar
con los
dat
os
conte
nid
os
en e
l se
rvid
or.
El co
nte
ned
or
llam
a a
los
mt
odos
de
cicl
o d
e vi
da
par
a m
anej
ar e
l Bea
n e
n e
l se
rvid
or.
Adem
s d
e es
tos
dos
tipos
de
mt
odos,
un B
ean E
nte
rprise
tie
ne
un f
icher
o d
e co
nfigura
cin a
soci
ado,
llam
ado u
n d
escr
ipto
r de
des
arro
llo,
se u
sa p
ara
configura
r el
Bea
n e
n e
l m
om
ento
del
des
arro
llo.
As
com
o e
s el
res
ponsa
ble
de
la c
reac
cin y
borr
ado d
e Bea
ns,
el se
rvid
or
de
Java
Bea
ns
de
Ente
rprise
tam
bi
n m
anej
a la
s tr
ansa
ciones
, la
concu
rren
cia,
la
seguridad
y la
per
sist
enci
a de
dat
os.
Incl
uso
las
conex
iones
entr
e el
clie
nte
y e
l se
rvid
or
se p
roporc
ionan
usa
ndo los
API
s de
RM
I y
JND
I y
opc
ional
men
te los
serv
idore
s pued
en p
roporc
ionar
esca
labili
dad
a t
rav
s del
man
ejo d
e th
read
s.
El ej
emplo
de
la c
asa
de
subas
tas
imple
men
ta u
na
com
ple
ta s
olu
cin d
e Ja
vaBea
ns
de
Ente
rprise
que
slo
pro
porc
ionan
la
lgic
a de
neg
oci
o y
usa
los
serv
icio
s ocu
ltos
pro
porc
ionad
os
por
la a
rquitec
tura
. Sin
em
bar
go,
podram
os
enco
ntr
ar q
ue
el s
ervi
cio d
e co
nte
ned
ore
s co
ntr
ola
dore
s, a
unque
pro
porc
ionan
do u
na
mx
ima
port
abili
dad
, no c
onsi
gue
todos
los
requer
imie
nto
s de
nues
tra
aplic
aci
n.
En los
pr
xim
os
captulo
s ve
rem
os
cm
o p
roporc
ionar
est
os
serv
icio
s a
nues
tro B
ean y
tam
bi
n c
om
o u
sar
esto
s se
rvic
ios
enap
licac
iones
que
no u
sen B
eans
de
Ente
rprise
.
Pequ
eo
Prog
ram
as C
lient
eU
n p
eque
o c
liente
es
un p
rogra
ma
clie
nte
que
invo
ca a
la
lgic
a de
neg
oci
o q
ue
se e
jecu
ta e
n e
l se
rvid
or.
Se
llam
a "p
eque
o"
porq
ue
la m
ayora
del
pro
ceso
suce
de
en e
l se
rvid
or.
En la
siguie
nte
fig
ura
, el
ser
vlet
es
el c
liente
. In
voca
a los
Bea
ns
Ente
rprise
que
se e
jecu
tan s
obre
un s
ervi
dor
de
Java
Bea
ns
Ente
rprise
. Tam
bi
n e
jecu
ta la
lgic
a que
crea
las
pg
inas
web
que
apar
ecen
en e
l nav
egad
or.
-
Arq
uite
ctur
a M
ulti-
Fila
-
arquitec
tura
multi-
fila
o a
rquitec
tura
de
tres
fila
s des
cien
de
del
model
o e
stn
dar
d d
e dos
fila
s de
clie
nte
y s
ervi
dor
situ
ando
una
aplic
aci
n m
ulti-
fila
entr
e el
clie
nte
y la
bas
e de
dat
os.
Los
pro
gra
mas
clie
nte
s se
com
unic
an c
on la
bas
e de
dat
os
a tr
avs
de
la a
plic
aci
n d
el s
ervi
dor
usa
ndo lla
mad
as d
e al
to n
ivel
e indep
endie
nte
s de
la p
lata
form
a. L
a ap
licac
in
serv
idor
resp
onde
a la
s pet
icio
nes
del
clie
nte
, hac
e la
s lla
mad
as n
eces
aria
s a
la b
ase
de
dat
os
den
tro d
e la
bas
e de
dat
os
ocu
lta,
y r
esponde
al p
rogra
ma
clie
nte
de
la f
orm
aap
ropia
da.
El ej
emplo
de
casa
de
subas
tas
bas
ado e
n w
eb d
e tr
es f
ilas
consi
ste
en e
l se
rvle
t cl
iente
, el
ser
vidor
Ente
rprise
Jav
aBea
ns
(la
aplic
aci
n s
ervi
dor)
, y
el s
ervi
dor
de
la b
ase
de
dat
os
com
o s
e ve
en la
figura
.
Bea
ns
de E
ntid
ad y
de
Sesi
nExi
sten
dos
tipos
de
Bea
ns
Ente
rprise
: Bea
ns
de
entidad
y d
e se
sin.
Un B
ean E
nte
rprise
que
imple
men
ta u
na
entidad
de
neg
oci
o e
s un B
ean
de E
nti
dad,
y un B
ean E
nte
rprise
que
imple
men
ta u
na
tare
a de
neg
oci
o e
s un B
ean
de S
esi
n
.
Tp
icam
ente
, un B
ean d
e en
tidad
rep
rese
nta
una
fila
de
dat
os
per
sist
ente
s al
mac
enad
os
en u
na
tabla
de
la b
ase
de
dat
os.
En e
l ej
emplo
de
la c
asa
de
subas
tas,
Reg
istr
ati
on
Bean
es u
n B
ean d
e en
tidad
que
repre
senta
los
dat
os
de
un u
suar
io r
egis
trad
o,
y A
uct
ion
Item
Bean
es
un B
ean d
e en
tidad
que
repre
sena
los
dat
os
de
un te
m d
e la
subas
ta.
Los
Bea
ns
de
entidad
son t
ransa
cional
es y
de
larg
a vi
da.
Mie
ntr
as q
ue
los
dat
os
per
man
ezca
n,
el B
ean d
e en
tidad
pued
e ac
ceder
y a
ctual
izar
los.
Est
o n
o s
ignific
a que
tengam
os
un B
ean
ejec
ut
ndose
por
cada
fila
de
la t
abla
. Si no q
ue
los
Bea
ns
Ente
rprise
se
carg
an y
gra
ban
cuan
do e
s nec
esar
io.
Un B
ean d
e se
sin p
odra
ejec
uta
r una
lect
ura
o e
scritu
ra e
n la
bas
e de
dat
os,
per
o n
o e
s nec
esar
io.
Un B
ean d
e se
sin p
odra
invo
car
llam
adas
al JD
BC p
or
s m
ism
o o
podra
usa
run B
ean d
e en
tidad
par
a hac
er la
llam
ada,
en c
uyo
cas
o e
l Bea
n d
e se
sin e
s un c
liente
del
Bea
n d
e en
tidad
. U
n c
ampo d
e Bea
n c
ontien
e el
est
ado d
e la
conve
rsac
in y
son
tem
pora
les.
Si el
ser
vidor
o e
l cl
iente
se
blo
quea
n,
el B
ean d
e se
sin s
e v
. Fr
ecuen
tem
ente
se
usa
n los
Bea
ns
de
sesi
n c
on u
no o
ms
Bea
ns
de
entidad
y p
ara
oper
acio
nes
com
ple
jas
con d
atos.
Bean
s de
Sesi
nBe
ans d
e En
tidad
Cam
pos
que
contien
en e
l es
tado d
e la
conve
rsac
in
Rep
rese
nta
n d
atos
de
la b
ase
de
dat
os
Man
ejan
acc
esos
a la
bas
e de
dat
os
por
par
te d
el c
liente
Com
par
ten a
cces
os
entr
e m
ltip
les
usu
ario
sLa
vid
a del
clie
nte
es
la v
ida
del
Bea
nPe
sist
e m
ientr
as e
xist
an los
dat
os
Pued
en p
erder
se c
on la
tran
saci
n
Tra
nsa
cional
No s
obre
vive
a las
ca
das
del
ser
vidor
Sobre
vive
a las
ca
das
del
ser
vidor
No m
anej
a lo
s dat
os
de
form
a fina
Man
ejo d
e dat
os
de
form
a del
icad
a
La C
asa
de S
ubas
tas
Func
iona
El dia
gra
ma
mues
tra
los
Bea
ns
de
Ente
rprise
par
a la
aplic
aci
n d
e la
cas
a de
subas
tas
y su
rel
aci
n c
on e
l se
rvid
or
de
Java
Bea
ns
de
Ente
rprise
. El cl
iente
invo
ca la
lgic
a de
neg
oci
oen
cuat
ro B
eans
de
Ente
rprise
a t
rav
s de
sus
inte
rfac
es h
om
e y
rem
oto
. El se
rvid
or
Java
Bea
ns
de
este
eje
mplo
man
eja
los
det
alle
s de
baj
o n
ivel
incl
uye
ndo las
oper
acio
nes
de
lect
ura
y e
scritu
ra e
n la
bas
e de
dat
os.
Los
cuat
ro B
eans
del
eje
mplo
son:
Au
ctio
nIt
em
Bean
un B
ean d
e en
tidad
que
man
tien
e in
form
aci
n s
obre
el tem
de
la s
ubas
ta.
Reg
istr
ati
on
Bean
un B
ean d
e en
tidad
que
alm
acen
a in
form
aci
n d
e re
gis
tro d
e lo
s usu
ario
s.
Bid
derB
ean
un B
ean d
e se
sin q
ue
usa
Au
ctio
nIt
em
Bean
par
a re
cuper
ar u
na
listr
a de
los
tem
s de
la s
ubas
tas,
slo
los
nuev
os
tem
s, te
ms
cerc
a del
cie
rre,
e te
ms
cuyo
sum
ario
corr
esponde
con u
na
caden
a de
busq
ued
a en
la
bas
e de
dat
os.
Tam
bi
n c
om
pru
eba
la iden
tidad
del
usu
ario
y la
pas
sword
cuan
do a
lguie
n h
ace
una
puja
, y
alm
acen
ala
s nuev
as p
uja
s en
la
bas
e de
dat
os.
SellerB
ean
es
un B
ean d
e se
sin q
ue
usa
Reg
istr
ati
on
Bean
par
a co
mpro
bar
la
iden
tidad
del
usu
ario
y la
pas
sword
cuan
do a
lguie
n p
ost
ea u
n te
m p
ara
su s
ubas
ta,
yA
uct
ion
Item
Bean
par
a a
adir n
uev
os
tem
s a
la b
ase
de
dat
os
de
la s
ubas
ta.
-
Com
o s
e ve
en la
figura
super
ior,
un B
ean d
e en
tidad
o d
e se
sin r
ealm
ente
es
una
cole
cci
n d
e cl
ases
e inte
rfac
es.
Todos
los
Bea
ns
de
entidad
y d
e se
sin c
onsi
sten
en u
n inte
rfae
rem
oto
, un inte
rfac
e hom
e, y
la
clas
e del
Bea
n.
El se
rvid
or
busc
a el
inte
rfac
e hom
e del
Bea
n q
ue
est
eje
cut
ndose
en e
l se
rvid
or
Java
Bea
ns
de
Ente
rprise
, lo
usa
par
a cr
ear
elin
terf
ace
rem
oto
, e
invo
ca a
los
mt
odos
del
Bea
n a
tra
vs
del
inte
rfac
e re
moto
.U
n I
nte
rfac
e re
moto
de
un B
ean E
nte
rprise
dec
ribe
los
mt
odos
del
Bea
n,
o q
u
hac
e el
Bea
n.
Un p
rogra
ma
clie
nte
u o
tro B
ean E
nte
rprise
lla
ma
a lo
s m
todos
def
inid
os
en e
lin
terf
ace
rem
oto
par
a in
voca
r la
lgic
a de
neg
oci
os
imple
men
tada
por
el B
ean.
Un inte
rfac
e hom
e de
un B
ean d
e Ente
rprise
des
crib
e c
mo u
n p
rogra
ma
clie
nte
u o
tro B
ean E
nte
rprise
cre
a, e
ncu
entr
a (s
lo
los
Bea
ns
de
entidad
), y
elim
ina
ese
Bea
n d
eEnte
rpis
e de
su c
onte
ned
or.
El co
nte
ned
or,
most
rado e
n c
yan e
n e
l gr
fico
, pro
porc
iona
el inte
rfac
e en
tre
el B
ean I
nte
rfac
e y
las
funci
onal
idad
es d
e baj
o n
ivel
esp
ecfic
as d
e la
pla
tafo
rma
que
soport
a el
Bea
n.
Des
arro
llar y
Ejec
utar
Apli
cacio
nes
Las
her
ram
ienta
s de
des
arro
llo y
un s
ervi
dor
de
Java
Bea
ns
Ente
rprise
es
esen
cial
par
a ej
ecuta
r ap
licac
iones
con J
avaB
eans
Ente
rprise
. La
s her
ram
ienta
s de
des
arro
llo g
ener
anco
nte
ned
ore
s, q
ue
son c
lase
s que
pro
porc
ionan
un inte
rfac
e de
imple
men
taci
ones
de
baj
o n
ivel
en u
n s
ervi
dor
Java
Bea
ns
Ente
rprise
dad
o.
El se
rvid
or
pro
porc
ionad
o p
ued
e in
cluir
conte
ned
ore
s y
her
ram
ienta
s de
des
arro
llo p
ara
sus
serv
idore
s y
norm
alm
ente
public
ar
los
inte
rfac
es d
e baj
o n
ivel
par
a que
otr
os
vended
ore
s pued
en d
esar
rolla
r co
nte
ned
ore
s y
her
ram
ienta
s de
des
arro
llo p
ara
sus
serv
idore
s.
El ej
emplo
de
casa
de
subas
tas
usa
el se
rvid
or
Java
Bea
ns
y la
s her
ram
ienta
s de
des
arro
llo c
read
as p
or
BEA W
eblo
gic
. Vis
ita
su s
ite
par
a obte
ner
una
dem
o d
e 30 d
as.
Com
o t
odo e
st
suje
to a
las
esp
ecific
acio
nes
, to
dos
los
Bea
ns
Ente
rprise
son inte
rcam
bia
ble
s co
n c
onte
ned
ore
s, h
erra
mie
nta
s de
des
arro
llo,
y se
rvid
ore
s cr
eados
por
otr
os
vended
ore
s. D
e hec
ho,
podriam
os
escr
ibir n
ues
tro p
ropio
Bea
n E
nte
rprise
porq
ue
es p
osi
ble
, y
algunas
vec
es d
esea
ble
, usa
r Bea
ns
Ente
rprise
esc
rito
s por
uno o
ms
pro
veed
ore
sque
ensa
mbla
rem
os
den
tro d
e una
aplic
aci
n d
e Ja
vaBea
ns
Ente
rprise
.
Cm
o Fu
ncio
nan
las
Aplic
acio
nes
Mul
ti-Fi
laEl obje
tivo
de
una
aplic
aci
n m
ulti-
fila
es
que
el c
liente
pued
a tr
abaj
ar c
on los
dat
os
de
una
aplic
aci
n s
in c
onoce
r en
el m
om
ento
de
la c
onst
rucc
in d
nde
se e
ncu
entr
an los
dat
os.
Para
hac
er p
osi
ble
est
e niv
el d
e tr
ansp
aren
cia,
los
serv
icio
s ocu
ltos
en u
na
arquitec
tura
multi-
fila
usa
n s
ervi
cios
de
bsq
ued
a par
a lo
caliz
ar los
obje
tos
del
ser
vidor
rem
oto
(el
obje
to inte
rfac
e del
Bea
n r
emoto
), y
los
serv
icio
s de
com
unic
aci
n d
e dat
os
par
a m
ove
r lo
s dat
os
des
de
el c
liente
, a
trav
s d
el o
bje
to s
ervi
dor
rem
oto
, has
ta s
u d
estino f
inal
en e
lm
edio
de
alm
acen
aje.
Serv
icio
de
Bsq
ueda
Para
enco
ntr
ar los
obje
tos
del
ser
vidor
rem
oto
en e
l m
om
ento
de
la e
jecu
cin,
el p
rogra
ma
clie
nte
nec
esita
una
form
a de
busc
arlo
s. U
na
de
esta
s fo
rmas
es
usa
r el
API
Jav
aN
amin
g y
Direc
tory
Inte
rfac
eTM (
JND
I).
JND
I es
un inte
rfac
e co
mn p
ara
inte
rfac
es e
xist
ente
s de
nom
bre
s y
direc
torios.
Los
conte
ned
ore
s de
los
Java
Bea
ns
de
Ente
rprise
usa
n J
ND
Ico
mo inte
rfac
e par
a el
ser
vici
o d
e nom
bre
s del
Rem
ote
Met
hod I
nvo
cation (
RM
I).
Dura
nte
el des
arro
llo,
el s
ervi
cio J
ND
I re
gis
tra
el inte
rfac
e re
moto
con u
n n
om
bre
. Sie
mpre
que
el p
rogra
ma
clie
nte
use
el m
ism
o s
ervi
cio d
e nom
bre
s y
pre
gunte
por
el inte
rfac
ere
moto
con s
u n
om
bre
reg
istr
ado,
podr
enco
ntr
arlo
. El pro
gra
ma
clie
nte
lla
ma
al m
todo lo
oku
p s
obre
un o
bje
to j
avax.n
am
ing
.Co
nte
xt
par
a pre
gunta
r por
el inte
rfac
e re
moto
con s
u n
om
bre
reg
istr
ado.
El obje
to j
avax.n
am
ing
.Co
nte
xt
es d
onde
se a
lmac
enan
las
unio
nes
y e
s un o
bje
to d
ifer
ente
del
conte
xto d
el J
avaB
ean d
e Ente
rprise
, que
se c
ubre
ms
adel
ante
..
Com
un
icac
in
de D
atos
Una
vez
que
el p
rogra
ma
clie
nte
obtien
e una
refe
renci
a al
obje
to s
ervi
dor
rem
oto
, hac
e lla
mad
as a
los
mt
odos
de
este
obje
to.
Com
o e
l pro
gra
ma
clie
nte
tie
ne
una
refe
renci
a al
obje
to s
ervi
dor
rem
oto
, se
usa
una
tcn
ica
llam
ada
"envo
lver
dat
os"
par
a hac
er q
ue
par
ezca
que
el o
bje
to s
ervi
dor
rem
oto
es
loca
l par
a el
pro
gra
ma
clie
nte
.
La "
ord
enac
in d
e dat
os"
es
donde
las
llam
adas
a m
todos
del
obje
to s
ervi
dor
rem
oto
se
empaq
uet
an c
on s
us
dat
os
y se
env
an a
l obje
to s
ervi
dor
rem
oto
. El obje
to s
ervi
dor
rem
oto
des
empaq
uet
a (d
esord
ena)
los
mt
odos
y lo
s dat
os,
y lla
ma
al B
ean E
nte
rprise
. El re
sultad
o d
e la
lla
mda
al B
ean e
s em
paq
uet
ado d
e nuev
o y
pas
ado d
e vu
elta
al cl
iente
atr
avs
del
obje
to s
ervi
dor
rem
oto
, y
son d
esem
paq
uet
ados.
Los
conte
ned
ore
s de
Java
Bea
ns
Ente
rprise
usa
n s
ervi
cios
RM
I par
a ord
enar
los
dat
os.
Cuan
do s
e co
mpila
un B
ean,
se c
rean
unos
ficher
os
stu
b (
tal
n)
y sk
ele
ton
(es
quel
eto).
El
fich
ero
tal
n p
roporc
iona
la c
onfigura
cin d
el e
mpaq
uet
ado y
des
empaq
uet
ado d
e dat
os
en e
l cl
iente
, y
el e
squ
ele
to p
roporc
iona
la m
ism
a in
form
aci
n p
ara
el s
ervi
dor.
Los
dat
os
se p
asan
entr
e el
pro
gra
ma
clie
nte
y e
l se
rvid
or
usa
ndo s
eria
lizac
in.
La s
eria
lizac
in e
s una
form
a de
repre
senta
r ob
jeto
s Ja
vaTM c
om
o b
ytes
que
pued
en s
er e
nvi
ados
atr
avs
de
la r
ed c
om
o u
n s
trea
m y
pued
en s
er r
econst
uid
os
en e
l m
ism
o e
stad
o e
n e
l que
fuer
on e
nvi
ados
origin
alm
ente
.
Ozi
to
-
Bea
ns d
e En
tidad
y d
e Se
sin
El ej
emplo
usa
dos
Bea
ns
de
entidad
y d
os
de
sesi
n.
Los
Bea
ns
de
entidad
, A
uct
ion
Item
Bean
y R
eg
istr
ati
on
Bean
, re
pre
senta
n te
ms
per
sist
ente
s que
podran
est
aral
mac
enad
os
en u
n b
ase
de
dat
os,
y los
Bea
ns
de
sesi
n,
SellerB
ean
y B
idd
erB
ean
, re
pre
senta
n o
per
acio
nes
de
vida
cort
a co
n e
l cl
iente
y los
dat
os.
Los
Bea
ns
de
sesi
n s
on e
l in
terf
ace
del
clie
nte
hac
ia los
bea
ns
de
entidad
. El Sel
lerB
ean p
roce
sa p
etic
iones
par
a a
adir n
uev
os te
ms
par
a la
subas
ta.
El Bid
der
Bea
n p
roce
sapet
icio
nes
par
a re
cuper
ar te
ms
de
la s
ubas
ta y
situar
las
puja
s por
esos
tem
s. E
l ca
mbio
o a
dic
in d
e dat
os
a la
bas
e de
dat
os e
n u
n B
ean c
ontr
ola
do p
or
conte
ned
or
se le
dej
a a
los
Bea
ns
de
entidad
:Auct
ion S
ervl
et
Bea
ns
de
Entidad
Bea
ns
de
Ses
in
Cla
ses
Conte
ned
or
Au
ctio
nSer
vlet
ElAuct
ionSer
vlet
es
esen
cial
men
te la
segunda
fila
en la
aplic
aci
n y
el punto
foca
l par
a la
s ac
tivi
dad
es d
e la
subas
ta.
Ace
pta
entr
adas
fin
ales
del
usu
ario
des
de
el n
aveg
ador
med
iante
el pro
toco
lo d
e tr
ansf
eren
cia
de
hyp
erte
xto (
HTTP
), p
asa
la e
ntr
ada
al B
ean E
nte
rprise
apro
pia
do p
ara
su p
roce
so,
y m
ues
tra
el r
esultad
o d
el p
roce
so a
l usu
ario
fin
al e
nel
nav
egad
or.
Aqu hay
un d
iagra
ma
del
tip
o U
nifie
d M
odel
ing L
anguag
e (U
ML)
par
a la
cla
se A
uct
ion
Serv
let.
-
Los
mt
odos
de
Au
ctio
nS
erv
let
most
rados
arriba
invo
can a
la
lgic
a del
neg
oci
o q
ue
se e
jecu
ta e
n e
l se
rvid
or
busc
ando u
n B
ean E
nte
rprise
y lla
man
do a
uno o
ms
de
sus
mt
odos.
Cuan
do e
l se
rvel
t a
ade
cdig
o H
TM
L a
una
pg
ina
par
a m
ost
rars
ela
al u
suar
io,
la lgic
a se
eje
cuta
en e
l cl
iente
.
Por
ejem
plo
, el
mt
odo l
istA
llIt
em
s(o
ut)
eje
cuta
cdig
o e
n e
l cl
iente
par
a gen
erar
din
mic
amen
te u
na
pg
ina
HTM
L p
ara
que
la v
ea e
l cl
iente
en u
n n
aveg
ador.
La
pg
ina
HTM
Lse
rel
lena
con los
resu
ltad
os
de
una
llam
ada
a B
idd
erB
ean
que
ejec
uta
la
lgic
a en
el se
rvid
or
par
a gen
erar
una
lista
de
todos
los
tem
s de
la s
ubas
ta.
priv
ate
void
lis
tAll
Item
s(Se
rvle
tOut
putS
trea
m ou
t)
thr
ows
IOEx
cept
ion{
//Pu
t te
xt o
n HT
ML p
age
setTit
le(o
ut,
"Auc
tion
res
ults
");
St
ring
tex
t =
"Cli
ck I
tem
numb
er f
or d
escr
ipti
on
and
to p
lace
bid
.";
try{
add
Line
("
"+
text
, ou
t);
//Lo
ok u
p Bi
dder
bea
n ho
me i
nter
face
. Bid
derH
ome
bhom
e=(B
idde
rHom
e) c
tx.l
ooku
p("b
idde
r");
//Cr
eate
Bid
der
bean
rem
ote
inte
rfac
e. Bid
der
bid=
bhom
e.cr
eate
();
//Ca
ll B
idde
r be
an m
etho
d th
roug
h re
mote
int
erfa
ce.
Enumeratio
n en
um=(
Enum
erat
ion)
bid.
getI
temL
ist(
);
if
(enu
m !=
nul
l) {
//Pu
t re
trie
ved
item
s on
ser
vlet
pag
e. di
spla
yite
ms(e
num,
out
); add
Line
("",
out
); }
}
catc
h (E
xcep
tion
e)
{//
Prin
g er
ror
on s
ervl
et p
age.
add
Line
("Au
ctio
nSer
vlet
Lis
t Al
l It
ems
erro
r",o
ut);
Sy
stem
.out
.pri
ntln
("Au
ctio
nSer
vlet
:
"+e)
; }
out.fl
ush(
);}
-
Bea
ns d
e En
tidad
Au
ctio
nIt
em
Bean
y R
eg
istr
ati
on
Bean
son B
eans
de
entidad
. A
uct
ion
Item
Bean
aad
e nuev
os
tem
s de
subas
ta a
la
bas
e de
dat
os
y ac
tual
iza
la c
antidad
puja
da
por
los
usu
ario
s cu
ando
stos
puja
n p
or
el te
m.
Reg
istr
ati
on
Bean
aad
e in
form
aci
n a
la
bas
e de
dat
os
sobre
usu
ario
s re
gis
trad
os.
Am
bos
Bea
ns
consi
sten
en las
cla
ses
des
critas
aqu.
Au
ctio
nIte
m E
ntity
Bea
n
Aqu es
tn las
cla
se d
e A
uct
ion
Item
Bean
. Rec
uer
da
que
esto
s Bea
ns
de
Ente
rprise
son o
bje
tos
dis
trib
uid
os
que
usa
n e
l API
RM
I (I
nvo
caci
n R
emota
de
Mt
odos)
, por
eso, cu
ando
ocu
rre
un e
rror
se lan
za u
na
exce
pci
n R
MI
rem
ota
.Auct
ionIt
em.j
ava
Auct
ionIt
emH
om
e.ja
va
Auct
ionIt
emBea
n.j
ava
Auct
ionIt
emPk
.jav
a
Au
ctio
nIt
em
es
un inte
rfac
e re
moto
. D
escr
ibe
qu
hac
e el
Bea
n d
ecla
rando los
mt
odos
def
inid
os
por
el u
suar
io q
ue
pro
porc
ionan
la
lgic
a de
neg
oci
o p
ara
este
Bea
n.
Est
os
mt
odos
son u
sados
por
el c
liente
par
a in
tera
ctuar
con e
l Bea
n s
obre
la
conex
in r
emota
. Su n
om
bre
se
map
ea a
la
tabla
AU
CTIO
NIT
EM
S q
ue
pued
es v
er a
baj
o.
Au
ctio
nIt
em
Ho
me e
s el
inte
rfac
e hom
e. D
escr
ibe
cm
o s
e cr
ea e
l Bea
n,
com
o e
nco
ntr
arlo
, y
elim
inar
lo d
e su
conte
ned
or.
Las
her
ram
ienta
s de
des
arro
llo d
el s
ervi
dor
de
Bea
ns
de
Ente
rprise
pro
porc
ionar
n la
imple
men
taci
n p
ara
este
inte
rfac
e.
Au
ctio
nIt
em
Bean
es
el B
ean d
e Ente
rprise
. Im
ple
men
ta E
nti
tyB
ean
, pro
porc
iona
la lgic
a de
neg
oci
o p
ara
los
mt
odos
def
inid
os
por
el d
esar
rolla
dor,
e im
ple
men
ta los
mt
odos
de
En
tity
Bean
par
a cr
ear
el B
ean y
sel
ecci
onar
el co
nte
xto d
e se
sin.
Est
a es
una
clas
e que
nec
esita
imple
men
tar
el d
esar
rolla
dor
del
Bea
n. Sus
cam
pos
variab
les
map
ean a
los
cam
pos
de
la t
abla
AU
CTIO
NIT
EM
S q
ue
pued
es v
er a
baj
o.
Au
ctio
nIt
em
PK
es
la c
lase
cla
ve p
rim
aria
. El se
rvid
or
de
Bea
ns
Ente
rprise
req
uie
re q
ue
un B
ean d
e Entidad
Man
ejad
o p
or
Conte
ned
or
tenga
una
clas
e cl
ave
prim
aria
con u
nca
mpo p
blic
o p
rim
ario
(o c
ampos,
si se
usa
n c
lave
s prim
aria
s co
mpues
tas)
. El des
arro
llador
del
Bea
n im
ple
men
ta e
sta
clas
e. E
l ca
mpo I
D e
s la
cla
ve p
rim
aria
en la
tabla
AU
CTIO
NIT
EM
S q
ue
pued
es v
er m
s a
baj
o,
por
eso e
l ca
mpo i
d e
s un c
ampo p
blic
o d
e es
ta c
lase
. Al ca
mpo i
d s
e le
asi
gna
un v
alor
cuan
do s
e co
nst
ruye
la
clas
e de
la c
lave
prim
aria
.
Podem
os
ped
irle
al co
nte
ned
or
que
man
eje
la p
ersi
sten
cia
de
la b
ase
de
dat
os
de
un B
ean E
nte
rprise
o e
scribir e
l c
dig
o p
ara
man
ejar
la
per
sist
enci
a por
noso
tros
mis
mos.
En e
ste
captulo
, to
dos
los
bea
ns
son m
anej
ados
por
el c
onte
ned
or.
Con e
sto n
oso
tros
slo
dec
imos
qu
cam
pos
son m
anej
ados
por
el c
onte
ned
or
y le
dej
amos
al s
ervi
dor
de
Java
Bea
ns
de
Ente
rprise
que
hag
a el
res
to.
Est
o e
s fe
nom
enal
par
a la
s ap
licac
iones
sen
cilla
s, p
ero s
i tu
vier
amos
que
codific
ar a
lgo m
s c
om
plej
o,
nec
esitar
am
os
ms
contr
ol.
Cm
o e
scribir los
serv
icio
s ocu
ltos
de
los
Java
Bea
ns
Ente
rprise
par
a gan
ar m
s c
ontr
ol o p
roporc
ionar
ser
vici
os
sim
ilare
s par
a la
s ap
licac
iones
que
no u
sen J
avaB
eans
de
Ente
rprise
se c
ubre
en e
l ca
ptulo
3.
Tabl
a Au
ctio
n Ite
ms
Aqu es
t la
tabla
AU
CTIO
NIT
EM
S.
create tabl
e AU
CTIO
NITE
MS (
SUMM
ARY
VARC
HAR(
80)
,ID INT ,
COUNTER INT ,
DESC
RIPT
ION
VARC
HAR(
1000
) ,
STAR
TDAT
E DA
TE ,
ENDDATE DATE ,
STAR
TPRI
CE D
OUBL
E PR
ECIS
ION
,INCREMENT DOUBLE PRECISI
ON ,
SELL
ER V
ARCH
AR(3
0) ,
MAXBID DOUBLE PRECISI
ON,
BIDCOUNT INT,
HIGHBIDDER VARCHAR(3
0) )
Reg
istra
tion
Entit
y Be
an
Reg
istr
ati
on
Bean
const
a de
las
mis
mas
cla
ses
y ta
bla
s de
bas
e de
dat
os
que
el B
ean A
uct
ion
Item
, ex
cepto
que
la lgic
a de
neg
oci
o r
eal, los
cam
pos
de
la t
abla
de
la b
ase
de
dat
os,
y la
clav
e prim
aria
son d
e al
guna
form
a difer
ente
s. E
n v
ez d
e des
crib
ir las
cla
ses,
podem
os
nav
egar
por
ella
s y
lueg
o v
olve
r a
la d
escr
ipci
n d
e la
s cl
ases
de
Au
ctio
nIt
em
si
tenem
os
alguna
pre
gunta
.Reg
istr
atio
n.j
ava
Reg
istr
atio
nH
om
e.ja
va
Reg
istr
atio
nBea
n.j
ava
Reg
istr
atio
nPK
.jav
a
-
Tabl
a Re
gist
ratio
n
Aqu es
t la
tabla
REG
ISTR
ATIO
N.
create tabl
e RE
GIST
RATI
ON (
THEU
SER
VARC
HAR(
40)
,PASS
WORD
VAR
CHAR
(40)
,EMAILADDRESS
VAR
CHAR
(80)
,CREDITCARD VARCHAR(4
0) ,
BALANCE DOUBLE PRECISI
ON )
Bea
ns
de S
esi
nB
idd
erB
ean
y S
ellerB
ean
son los
Bea
ns
de
sesi
n.
Bid
derB
ean
rec
uper
a una
lista
de
los
tem
s de
la s
ubas
ta,
busc
a tem
s, c
hueq
uea
el ID
y la
pas
sword
del
usu
ario
cuan
do
alguie
n h
ace
una
puja
, y
alm
acen
a la
s nuev
as p
uja
s en
la
bas
e de
dat
os.
SellerB
ean
cheq
uea
el ID
y la
pas
sword
del
usu
ario
cuan
do a
lguie
n p
ost
ea u
n te
m p
ara
su s
ubas
ta,
ya
ade
nuev
os
tem
s par
a su
bas
ta a
la
bas
e de
dat
os.
Am
bos
Bea
ns
de
sesi
n e
stn
des
arro
llados
inic
ialm
ente
com
o B
eans
sin e
stad
o.
Un B
ean s
in e
stad
o n
o m
antien
e un r
egis
tro d
e lo
que
hiz
o e
l cl
iente
en u
na
llam
ada
ante
rior;
mie
ntr
as q
ue
un B
ean c
on e
stad
o c
om
ple
to s
i lo
hac
e. L
os
Bea
ns
con e
stad
o c
om
ple
to s
on m
uy
tile
s si
la
oper
aci
n e
s al
go m
s q
ue
una
sim
ple
bsq
ued
a y
la o
per
aci
n d
el c
liente
dep
ende
de
algo q
ue
ha
suce
did
o e
n u
na
llam
ada
ante
rior.
Bea
n d
e se
sin
Bid
der
Aqu es
tn las
cla
se d
e B
idd
erB
ean
. Rec
uer
da
que
esto
s Bea
ns
de
Ente
rprise
son o
bje
tos
dis
trib
uid
os
que
usa
n e
l API
RM
I (I
nvo
caci
n R
emota
de
Mt
odos)
, por
eso, cu
ando
ocu
rre
un e
rror
se lan
za u
na
exce
pci
n R
MI
rem
ota
.
No e
xite
n c
lave
s prim
aria
s porq
ue
esto
s Bea
ns
son t
empora
les
y no h
ay a
cces
os
a la
bas
e de
dat
os.
Par
a re
cuper
ar te
ms
de
la b
ase
de
dat
os,
Bid
derB
ean
cre
a un e
jem
pla
r de
Au
ctio
nIt
em
Bean
, y
par
a pro
cesa
r la
s puja
s, c
rea
un e
jem
pla
r de
Reg
istr
ati
on
Bean
.Bid
der
.jav
a
Bid
der
Hom
e.ja
va
Bid
der
Bea
n.j
ava
Bid
der
es u
n inte
rfac
e re
moto
. D
escr
ibe
lo q
ue
hac
e el
Bea
n d
ecla
rando los
mt
odos
def
inid
os
por
el d
esar
rolla
dor
que
pro
porc
ionan
la
lgic
a de
neg
oci
o p
ara
este
Bea
n.
Est
o s
on
los
que
que
el c
liente
lla
ma
de
form
a re
mota
.
Bid
derH
om
e e
s el
inte
rfac
e hom
e. D
esci
be
cm
o s
e cr
ear
el B
ean,
com
o s
e busc
a y
com
o s
e el
imin
a de
su c
onte
ned
or.
Bid
derB
ean
es
el B
ean d
e Ente
rprise
. Im
ple
men
ta S
ess
ion
Bean
, pro
porc
iona
la lgic
a de
neg
oci
o p
ara
los
mt
odos
def
inid
os
por
el d
esar
rolla
dor,
e im
ple
men
ta los
mt
odos
de
Sess
ion
Bean
par
a cr
ear
el B
ean y
sel
ecci
onar
el co
nte
xto d
e se
sin.
Bea
n d
e se
sion
Sel
ler
SellerB
ean
const
a de
los
mis
mos
tipos
de
clas
e que
un B
idd
erB
ean
, ex
cepto
que
la lgic
a de
neg
oci
o e
s difer
ente
. En v
ez d
e des
crib
ir las
cla
ses,
pued
es n
aveg
ar p
or
ella
s y
lueg
ovo
lver
a la
explic
aci
n d
e B
idd
erB
ean
si tien
es a
lguna
duda.
Sel
ler.
java
Sel
lerH
om
e.ja
va
Sel
lerB
ean.j
ava
Clas
es C
onte
nedo
rLa
s cl
ases
que
nec
esita
el c
onte
ned
or
par
a des
arro
llar
un B
ean E
nte
rprise
den
tro d
e un s
ervi
dor
de
Java
Bea
ns
Ente
rprise
par
ticu
lar
se g
ener
an c
on u
na
her
ram
ienta
de
des
arro
llo.
Las
clas
es incl
uye
n _
Stu
b.c
lass
y _
Skel.
class
que
pro
porc
ionan
el RM
I en
el cl
iente
y e
l se
rvid
or
resp
ectiva
men
te.
Est
as c
lase
s se
utiliz
an p
ara
move
r dat
os
entr
e el
pro
gra
ma
clie
nte
y e
l se
rvid
or
de
Java
Bea
ns
de
Ente
rprise
. Adem
s,
la im
ple
men
taci
n d
e la
s cl
ases
se
crea
par
a lo
s in
terf
aces
yla
s re
gla
s de
des
arro
llo d
efin
idas
par
a nues
tro B
ean.
El obje
to S
tub s
e in
stal
a o s
e des
carg
a en
el si
stem
a cl
iente
y p
roporc
iona
un o
bje
to p
roxy
loca
l par
a el
clie
nte
. Im
ple
men
ta los
inte
rfac
es r
emoto
s y
del
ega
de
form
a tr
ansp
aren
teto
das
las
lla
mad
as a
mt
odos
a tr
avs
de
la r
ed a
l obje
to r
emoto
.
El obje
to S
kel se
inst
ala
o s
e des
carg
a en
el si
stem
a se
rvid
or
y pro
porc
iona
un o
bje
to p
roxy
loca
l par
a el
ser
vidor.
Des
pem
paq
uet
a lo
s dat
os
reci
bid
os
a tr
avs
de
la r
ed d
esde
elobje
toS
tub p
ara
pro
cesa
rlos
en e
l se
rvid
or.
Ozi
to
-
Examinar un Bean Controlado por ContenedorEsta seccin pasea a travs del cdigo de RegistrationBean.java para ver lo fcilque es hacer que el contenedor maneje la persistencia del almacenamiento dedatos en un medio oculto como una base de datos (por defecto).
Variables Miembro
Mtodo Create
Mtodos de Contexto de Entidad
Mtodo Load
Mtodo Store
Connection Pooling
Descriptor de Desarrollo
Variables MiembroUn entorno de contenedor controlador necesita saber qu variables son paraalmacenamiento persistente y cuales no. En el lenguaje JavaTM, la palabra clavetransient indica variables que no son incluidas cuando los datos de un objeto seserializan y escriben en un almacenamiento permanente. En la claseRegistrationBean.java, la variable EntityContext est marcada como transientpara indicar que su dato no ser escrito en ningn medio de almacenamiento.
El dato de EntityContext no se escribe en el almacenamiento permanente porquesu propsito es proporcionar informacin sobre el contexto en el momento deejecucin del contenedor. Por lo tanto, no contiene datos sobre el usuarioregistrado y no debera grabarse en un medio de almacenamiento. Las otrasvariables estn declaradas como public, por lo que el contenedor de este ejemplopuede descubrirlas usando el API Reflection.
protected transient EntityContext ctx; public String theuser, password, creditcard, emailaddress; public double balance;
Mtodo CreateEl mtodo ejbCreate del Bean es llamado por el contenedor despus de que elprograma cliente llame al mtodo create sobre el interface remoto y pase losdatos de registro. Este mtodo asigna los valores de entrada a las variablesmiembro que representan los datos del usuario. El contenedor maneja elalmacenamiento y carga de los datos, y crea nuevas entradas en el medio de
-
almacenamiento oculto.
public RegistrationPK ejbCreate(String theuser, String password, String emailaddress, String creditcard) throws CreateException, RemoteException {
this.theuser=theuser; this.password=password; this.emailaddress=emailaddress; this.creditcard=creditcard; this.balance=0;
Mtodos de Contexto de EntidadUn Bean de entidad tiene un ejemplar de EntityContext asociado que ofrece alBean acceso a la informacin del contenedor controlador en el momento de laejecucin, como el contexto de la transacin.
public void setEntityContext( javax.ejb.EntityContext ctx) throws RemoteException { this.ctx = ctx; }
public void unsetEntityContext() throws RemoteException{ ctx = null; }
Mtodo LoadEl mtodo ejbLoad del Bean es llamado por el contenedor para cargar los datosdesde el medio de almacenamiento oculto. Esto sera necesario cuandoBidderBean o SellerBean necesiten chequear la ID y password del usuario.
Not