Ejercicio 1.6: Filtro de una Lista de registros relacionales

Antes de comenzar, debe completar el Ejercicio 1.5: Creación de una página de actualización.

Ya hemos visto cómo utilizar una lista de registros relacionales para visualizar todos los registros de una tabla y cómo aplicar una condición de filtro sobre un registro relacional para seleccionar un registro específico. A continuación, aprenderemos cómo visualizar sólo los registros que coinciden con un criterio específico, permitiendo a los usuarios ver los anuncios clasificados por categorías.

Como en la página de actualización, realizaremos un filtro sobre un parámetro que contenga la categoría deseada, pasado a una página desde un hiperenlace. Como hay múltiples registros que coinciden con la categoría, el filtro se aplicará a una lista de registros relacionales en vez de a un registro relacional.

Creación de una lista de registros relacionales filtrados

Mostrar

La creación de una lista de registros relacionales filtrados incluye el paso adicional del filtrado de la lista, de forma que sólo se muestren determinados registros. De forma parecida a cuando se creó la página update_record.jsp, especificaremos un parámetro en la página all_records.jsp y utilizaremos un enlace para enviar dicho parámetro a la página filtered_records.jsp.

  1. Abra el archivo filtered_records.jsp realizando una doble pulsación sobre él en la vista Explorador de proyectos.
  2. Elimine el texto por omisión.
  3. Cree una lista de registros relacionales arrastrando una Lista de registros relacionales de la paleta sobre la página. Se abrirá la ventana Añadir lista de registros relacionales.
  4. Asigne el nombre filtered_recordlist a esta lista de registros.
  5. Asegúrese de que Añadir controles de datos está seleccionado, y pulse Siguiente.
  6. Pulse sobre la tabla W5SAMPLE.ADS.
  7. Pulse Siguiente.
  8. En Tareas, pulse Filtrar resultado. Se abre la ventana Filtros.
  9. Para crear una condición de filtro, pulse el botón Añadir en la pestaña Condiciones. Se abre la ventana Condiciones.
  10. Seleccione la columna MAINCATEGORY de la lista desplegable Columna.
  11. Entre #{param.CAT} en el campo Valor. Este código será evaluado en tiempo de ejecución como valor del parámetro de solicitud CAT.

    La ventana Condiciones tendrá este aspecto:

    Ventana Condiciones

  12. Pulse Aceptar para aplicar la condición de filtro a la lista de registros relacionales. Esta condición se muestra en la lista de la pestaña Condiciones.
  13. Pulse Cerrar.
  14. Pulse Siguiente.
  15. Nuevamente tiene que elegir las distintas columnas a visualizar en la tabla de datos. Elija sólo estas columnas:
  16. Organice las columnas en el orden siguiente:
    1. TITLE
    2. DESCRIPTION
    3. MAINCATEGORY
    4. PRICE
    5. PHONE
    La ventana Añadir lista de registros relacionales será algo como:

    Ventana Añadir lista de registros relacionales

  17. Pulse Finalizar. La lista de registros relacionales se añadirá a la página. Será justo como la página all_records.jsp, pero como está filtrada por categorías, sólo mostrará los registros de una categoría cada vez.
  18. Guarde la página.

    La página debería ser algo como:

    Aspecto actual de la página

Enlace desde all_records.jsp

Mostrar

Como en la página de actualización, ahora hace falta crear un hiperenlace al archivo all_records.jsp que además de acceder al archivo filtered_records.jsp también pasará el parámetro CAT para filtrar la lista de registros relacionales.

  1. Abra el archivo all_records.jsp.
  2. En la vista Paleta, expanda la bandeja Componentes Faces.
  3. Arrastre un componente Enlace de la Paleta directamente sobre el control de salida {MAINCATEGORY} de la tabla de datos. Se abrirá la ventana Configurar URL.
  4. En el campo URL, entre filtered_records.jsp como página de destino y deje vacío el campo Etiqueta.

    Al soltar el enlace directamente sobre un control de salida y dejar vacío el campo Etiqueta se consigue que el hiperenlace utilice el texto {MAINCATEGORY} como la etiqueta del hiperenlace.

  5. Pulse Aceptar.
  6. Pulse sobre el icono de enlace    Icono de enlace y luego sobre la pestaña Parámetro de la vista Propiedades.
  7. Pulse Añadir parámetro para crear un parámetro nuevo.
  8. Entre CAT en el campo Nombre del parámetro nuevo.
  9. Para enlazar el parámetro CAT a la columna MAINCATEGORY del formulario de entrada, seleccione el campo Valor y pulse sobre el botón Seleccionar objeto de datos de página de dicho campo. Se abrirá la ventana Seleccionar objeto de datos de página.
  10. En el campo Objetos de datos, pulse sobre la columna MAINCATEGORY de la lista de registros relacionales all_recordlist(ADS).
  11. Pulse Aceptar.
  12. Guarde la página y pruébela. Cuando pulse sobre un nombre de categoría, accederá a la página filtered_records.jsp, que sólo muestra los anuncios clasificados de dicha categoría.

Enhorabuena

Ha terminado el Módulo 1: Creación de páginas web con conexiones de datos. Ha aprendido a:

Añadir características avanzadas

Este módulo ha presentado una introducción a la tecnología y herramientas de JavaServer Faces. Hay muchas más cosas que puede hacer para que el sitio sea más atractivo, útil y eficaz. En el módulo siguiente, Módulo 2: Añadir características avanzadas, aprenderá cómo convertir este sitio sencillo de anuncios clasificados en una aplicación más compleja y enriquecida visualmente. Continúe en el módulo siguiente si quiere que su sitio tenga el aspecto siguiente:

Vista previa del aspecto de la página

Condiciones de uso | Comentarios
(C) Copyright IBM Corporation 2000, 2004. Reservados todos los derechos.