1178
Capítulo 27 Aplicaciones Web: parte 2
un objeto
CachedRowSet
. Si hace clic en el elemento
addressesDataProvider
en la ventana
Esquema
, podrá ver
en la ventana
Propiedades
que su propiedad
cachedRowSet
se estableció en
addressesRowSet
, un objeto que
implementa a la interfaz
CachedRowSet
.
Paso 6: Modifi car la instrucción SQL de
addressesRowSet
El objeto
CachedRowSet
envuelto por nuestro objeto
addressesDataProvider
está confi gurado de manera pre-
determinada para ejecutar una consulta SQL que seleccione todos los datos en la tabla
Direcciones
de la base de
datos
LibretaDirecciones
. Para editar esta consulta SQL, puede expandir el nodo
SessionBean
en la ventana
Esquema
y hacer doble clic en el elemento
addressesRowSet
para abrir la ventana del editor de consultas (fi gura
27.5). Nos gustaría editar la instrucción SQL de manera que los registros con apellidos duplicados se ordenen
por apellido, y después por primer nombre. Para ello, haga clic en la columna
Tipo de orden
enseguida de la fi la
LASTNAME
y seleccione
Ascendente
. Después, repita esto para la fi la
FIRSTNAME
. Observe que la expresión
ORDERBY
JHTP7.ADDRESSES.LASTNAME
ASC
,
JHTP7.ADDRESSES.FIRSTNAME
ASC
se agregó a la instrucción SQL al fi nal del editor.
Paso 7: Agregar validación
Es importante validar los datos del formulario en esta página, para asegurar que los datos puedan insertarse
correctamente en la base de datos
LibretaDirecciones
. Todas las columnas de la base de datos son de tipo
varchar
y tienen restricciones de longitud. Por esta razón, debemos agregar un
Validador de longitud
a cada
componente
Campo de texto
, o establecer la propiedad
maxLength
de cada componente
Campo de texto
. Opta-
mos por establecer la propiedad
maxLength
de cada uno. Los componentes
Campo de texto
del primer nombre,
apellido paterno, calle, ciudad, estado y código postal no pueden exceder a 20, 30, 100, 30, 2 y 5 caracteres,
respectivamente.
Figura 27.5
| Edición de la instrucción SQL de
addressesRowSet
.
Por último, arrastre un componente
Grupo de mensaje
a su página, a la derecha de la
Tabla
. Un componente
Grupo de mensaje
muestra mensajes del sistema. Utilizamos este componente para mostrar un mensaje de error
cuando falla un intento de contactarse con la base de datos. Establezca la propiedad
showGlobalOnly
del
Grupo
de mensaje
a
true
, para evitar que se muestren aquí mensajes de error de validación a nivel de componente.
Archivo JSP para una página Web que interactúa con una base de datos
El archivo JSP para la aplicación se muestra en la fi gura 27.6. Este archivo contiene una gran cantidad de marca-
do generado para los componentes que vimos en el capítulo 26. En este ejemplo sólo hablaremos sobre el marcado
para los componentes que son nuevos.
27_MAQ_CAP_27_DEITEL.indd1178
5/8/084:17:23PM