Exercício 1.6: Filtrando uma Lista de Registros Relacionais

Antes de iniciar, você precisa concluir o Exercício 1.5: Criando uma Página de Atualização.

Agora que você viu como utilizar uma lista de registros relacionais para exibir todos os registros em uma tabela e como aplicar uma condição de filtro em um registro relacional para isolar um registro específico. A seguir, você aprenderá como exibir somente os registros que correspondam a um critério específico, permitindo que os usuários visualizem os anúncios classificados por categoria.

Como na página de atualização, você filtrará em um parâmetro contendo a categoria desejada, transmitido para a página a partir de um hyperlink. Como pode haver vários registros que correspondam à categoria, o filtro será aplicado a uma lista de registros relacionais, em vez de a um registro relacional.

Criando uma Lista de Registros Relacionais Filtrada

Mostre-me

A criação de uma lista de registros relacionais filtrada inclui a etapa extra de filtrar a lista de modo que somente determinados registros sejam mostrados. De forma semelhante a quando você criou a página update_record.jsp, você especificará um parâmetro na página all_records.jsp e utilizará um link para enviar esse parâmetro para a página filtered_records.jsp.

  1. Abra o arquivo filtered_records.jsp dando um clique duplo nele na visualização Project Explorer.
  2. Remova o texto padrão.
  3. Crie uma lista de registros relacionais arrastando uma Relational Record List (Lista de Registros Relacionais) da Paleta para a página. A janela Incluir Lista de Registros Relacionais é aberta.
  4. Dê a essa Lista de Registros o nome filtered_recordlist.
  5. Certifique-se de que Add Data Controls (Incluir Controles de Dados) esteja selecionado e clique em Next (Avançar).
  6. Clique na tabela W5SAMPLE.ADS.
  7. Clique em Next (Avançar).
  8. Em Tasks (Tarefas), clique em Filter results (Filtrar resultados). A janela Filtros é aberta.
  9. Para criar a condição de filtro, clique no botão Incluir na guia Conditions (Condições). A janela Condições é aberta.
  10. Selecione a coluna MAINCATEGORY na lista drop-down Column (Coluna).
  11. Digite #{param.CAT} no campo Value (Valor). Esse código será avaliado em tempo de execução para ser o valor do parâmetro do pedido CAT.

    A janela Condições deve ser semelhante a esta:

    Janela Condições

  12. Clique em OK para aplicar a condição de filtro a sua lista de registros relacionais. Essa condição é relacionada na guia Condições.
  13. Clique em Close (Fechar).
  14. Clique em Next (Avançar).
  15. Novamente, você tem a escolha de diferentes colunas para exibir na tabela de dados. Escolha somente estas colunas:
  16. Organize as colunas na seguinte ordem:
    1. TITLE
    2. DESCRIPTION
    3. MAINCATEGORY
    4. PRICE
    5. PHONE
    A janela Incluir Lista de Registros Relacionais deve ser semelhante a esta:

    Janela Incluir Lista de Registros Relacionais

  17. Clique em Finish (Concluir). A lista de registros relacionais é incluída na página. Ela é semelhante à lista de registros na página all_records.jsp, mas como é filtrada por categoria ela mostrará somente os registros em uma categoria por vez.
  18. Salve a página.

    A página deve ser semelhante a esta:

    Aparência Atual da Página

Fazendo Link de all_records.jsp

Mostre-me

Da mesma forma que na página de atualização, agora você precisa criar um hyperlink no arquivo all_records.jsp que não apenas navegará para o arquivo filtered_records.jsp mas também transmitirá o parâmetro CAT para filtrar a lista de registros relacionais.

  1. Abra o arquivo all_records.jsp.
  2. Na visualização da Paleta, expanda a gaveta Faces Components (Componentes Faces).
  3. Arraste um componente Link da Paleta diretamente para o controle de saída {MAINCATEGORY} na tabela de dados. A janela Configure URL (Configurar URL) é aberta.
  4. No campo URL, digite filtered_records.jsp como a página de destino e deixe o campo Label (Etiqueta) vazio.

    Soltar o link diretamente em um controle de saída e deixar o campo Etiqueta vazio faz com que o hyperlink utilize o texto de {MAINCATEGORY} como a etiqueta do hyperlink.

  5. Clique em OK.
  6. Clique no ícone do link  Ícone do Link e, em seguida, clique na guia Parameter (Parâmetro) na visualização Propriedades.
  7. Clique em Add Parameter (Incluir Parâmetro) para criar um novo parâmetro.
  8. Digite CAT no campo Name (Nome) para o novo parâmetro.
  9. Para ligar o parâmetro CAT à coluna MAINCATEGORY no formulário de entrada, selecione o campo Value (Valor) e, em seguida, clique no botão Select Page Data Object (Selecionar Objeto de Dados da Página) nesse campo. A janela Selecionar Objeto de Dados da Página será aberta.
  10. No campo Data Objects (Objetos de Dados), clique na coluna MAINCATEGORY da lista de registros relacionais all_recordlist(ADS).
  11. Clique em OK.
  12. Salve a página e teste-a. Quando você clicar em um nome de categoria, será enviado à página filtered_records.jsp, que mostra somente os anúncios classificados naquela categoria.

Parabéns!

Você concluiu o Módulo 1: Criando Páginas da Web com Conexões de Dados. Você aprendeu como:

Incluindo Recursos Avançados

Este módulo apresentou a você a tecnologia e as ferramentas JavaServer Faces. Existe muito mais que você pode fazer para tornar seu site atraente, utilizável e eficiente. No próximo módulo, Módulo 2: Incluindo Recursos Avançados, você aprenderá como a partir desse site simples de anúncios classificados e transformá-lo em um aplicativo visualmente mais agradável e mais complexo. Continue com o próximo módulo se quiser aprender como fazer seu site ficar semelhante a este:

Visualização da Aparência da Página

Feedback
(C) Copyright IBM Corporation 2000, 2005. Todos os Direitos Reservados.