Exercício 1.5: Criando uma Página de Atualização

Antes de iniciar, você precisa concluir o Exercício 1.4: Criando Novos Registros.

Neste ponto, você criou páginas para visualizar e criar listagens para o Web site. Neste exercício, você criará uma página que permite que os usuários atualizem e excluam listagens. A página de atualização será muito semelhante à página de criação, exceto que na página de atualização os campos de entrada exibirão dados de um registro existente para que o usuário o altere.

Primeiro você criará um registro relacional que representa um registro existente do banco de dados. Em seguida, você criará um formulário de atualização JavaServer Faces para esse registro relacional, e depois de algumas pequenas alterações sua página estará pronta para ser testada.

Criando o Registro Relacional de Atualização

Mostre-me
  1. Abra o arquivo update_record.jsp dando um clique duplo nele na visualização Project Explorer.
  2. Exclua o texto padrão Coloque o conteúdo aqui.
  3. Na visualização Paleta, clique na gaveta Dados para expandi-la.
  4. Arraste o componente Registro Relacional da Paleta para a área de conteúdo em branco. A janela Incluir Registro Relacional é aberta.
  5. No campo Nome, digite update_record.
  6. Em Criar controles para, clique em Atualizar um registro existente.
  7. Certifique-se de que a opção Incluir controles de entrada/saída para exibir o Registro Relacional na página da Web esteja selecionada.
  8. Clique em Avançar.
  9. Na caixa Tabela, clique na tabela W5SAMPLE.ADS.
  10. Clique em Avançar. A página Seleção de Coluna e Outras Tarefas é aberta.

Filtrando os Resultados

Mostre-me

Um registro relacional pode mostrar somente um registro do banco de dados. Portanto, é preciso filtrar a tabela do banco de dados para que somente um registro apareça para que o usuário o edite. (Não foi necessário filtrar o banco de dados no exercício anterior porque você criou um novo registro e, portanto, não havia resultados do banco de dados para serem filtrados.) Como cada registro no banco de dados tem um número de ID exclusivo, você filtrará os resultados para aquele com um número de ID específico.

  1. Em Tarefas, clique em Filtrar Resultados. A janela Filtros é aberta e insere a condição de filtro padrão ID = #{param.ID} na coluna Filtro.

    A janela Filtros é semelhante a esta:

    A Janela Filtros

    Esse código filtra os registros no banco de dados para que somente o registro com o número do ID especificado apareça no registro relacional. Você aprenderá mais sobre esta condição na seção Inserindo um Hyperlink posteriormente neste exercício.

  2. Clique em Fechar.
  3. Clique em Avançar. A página Configurar Controles de Dados é aberta.
  4. Na seção Campos a serem exibidos, limpe a caixa de opções próxima a todos os nomes de campos exceto os que desejar exibir em seu formulário de entrada:
  5. Clicando em Para Cima ou Para Baixo, reordene os nomes dos campos de cima para baixo, da seguinte maneira:
    1. ID
    2. TITLE
    3. DESCRIPTION
    4. MAINCATEGORY
    5. PRICE
    6. PHONE
  6. Para o campo de ID, selecione Campo de saída na lista drop-down na coluna Tipo de Controle.

    Embora você queira que os usuários possam visualizar o número de ID de um registro, você não deseja que eles possam atualizá-lo. Tornar o campo de ID um campo de Saída ajudará a evitar o problema de IDs duplicados.

  7. Clique em Opções. A janela Opções é aberta.
  8. Certifique-se de que a opção Botão Submeter esteja selecionada.
  9. Digite Atualizar no campo Etiqueta.
  10. Clique em OK.
  11. A janela Incluir Registro Relacional deve ser semelhante a esta:

    Janela Incluir Registro Relacional

  12. Clique em Concluir para gerar o formulário de atualização na página, conforme mostrado a seguir:

    Aparência da Página Atual

Programando o Botão Atualizar

Mostre-me

Novamente, incluiremos código para encaminhar o usuário à página all_records.jsp para exibir o registro alterado com todos os outros registros.

  1. Clique no botão Atualizar que você acabou de criar na página da Web.
  2. Abra a visualização Quick Edit.
  3. Na visualização Quick Edit, clique para posicionar o cursor diretamente antes do código return "";
  4. Pressione Enter.Uma nova linha aparece antes de return "";
  5. Clique com o botão direito do mouse na linha em branco e, em seguida, escolha Inserir Snippet > Ir para a Página no menu de contexto. A janela Editar Ação GotoPage é aberta.
  6. Na lista drop-down, selecione all_records.jsp como a página de destino.
  7. Clique em OK.
  8. O código do evento para seu botão deve ser semelhante a este:

    Exemplo de Código

    Agora, depois que o usuário atualizar um registro, a página enviará o navegador para a página all_records.jsp para ver que o registro foi atualizado. O botão Excluir também deverá encaminhar de volta o usuário para a página all_records.jsp.

  9. Repita as etapas 1-7 para editar o código da mesma maneira para o botão Excluir na página da Web.
  10. Salve a página.

Inserindo um Hyperlink

Mostre-me

Agora você criará links na página all_records.jsp para que o usuário possa selecionar um registro do banco de dados para atualizar. #{param.ID} representa o número do ID do registro que a página de atualização irá atualizar. Quando o usuário clicar no link de um registro, o número do ID desse registro será enviado à página update_record.jsp como o parâmetro #{param.ID}. Em seguida, o registro relacional filtrado que você acabou de inserir na página update_record.jsp exibirá somente esse registro para atualização.

  1. Na visualização Project Explorer, dê um clique duplo no arquivo all_records.jsp para abri-lo no Editor.
  2. Clique em qualquer lugar dentro da tabela de dados.
  3. Abra a visualização Propriedades.
  4. Na visualização Propriedades, clique em h:dataTable na lista de tags HTML à esquerda da visualização.
  5. No extremo direito da visualização Propriedades, clique em Incluir para incluir uma nova coluna.
  6. Digite Atualizar no campo Etiqueta da nova coluna e pressione Enter. Uma coluna denominada Atualizar é gerada na tabela de dados.
  7. Com a nova coluna selecionada na visualização Propriedades, clique em Mover para Baixo até que a coluna Atualizar esteja na extremidade direita da tabela de dados.
  8. Na visualização Paleta, clique na gaveta Componentes Faces para expandi-la.
  9. Arraste um componente Link da Paleta para a coluna Atualizar recém-criada. A janela Configurar URL é aberta.
  10. No campo URL, digite update_record.jsp como o link de destino e Atualizar Listagem no campo Etiqueta.
  11. Clique em OK. O hyperlink Atualizar Listagem aparece na coluna Atualizar.
  12. Clique no ícone do link Ícone do Link ao lado do hyperlink Atualizar Listagem na coluna Atualizar.
  13. Na visualização Propriedades, clique na guia Parâmetro, localizada logo abaixo da tag hx:outputLinkEx no lado esquerdo da visualização.
  14. Clique em Incluir Parâmetro e, em seguida, digite ID no campo Nome.

    É necessário ligar o parâmetro ID à coluna ID no formulário de entrada. Ligar o parâmetro do hyperlink à coluna de ID da lista de dados significa que quando o hyperlink for clicado, o parâmetro do pedido será o ID do registro na lista.

  15. Selecione o campo Valor e, em seguida, clique no botão Selecionar Objeto de Dados da Página no campo. A janela Selecionar Objeto de Dados da Página é aberta.
  16. Em Objetos de Dados, clique na coluna ID da Lista de Registros all_recordlist(ADS), como mostrado a seguir:

    Janela Selecionar Objeto de Dados da Página

  17. Clique em OK.

    Agora, quando o usuário clicar no link Atualizar Listagem, o Web site permitirá que o usuário atualize informações sobre o anúncio classificado.

  18. Salve o arquivo e teste a página, se desejar. Lembre-se de abrir all_records.jsp primeiro, porque essa é a página que faz o link para update_record.jsp.

Neste exercício, você aprendeu como criar páginas da Web que atualizam registros em um banco de dados. Agora você está pronto para iniciar o Exercício 1.6: Filtrando uma Lista de Registros Relacionais.

Termos de Uso | Feedback
(C) Copyright IBM Corporation 2000, 2004. Todos os Direitos Reservados.