Exercício 2.4: Utilizando Regras de Navegação

Antes de iniciar, você precisa concluir o Exercício 2.3: Utilizando o Componente Upload de Arquivo.

Pela maneira como a página new_record.jsp está configurada, o usuário precisa tomar muito cuidado para não digitar um número de ID que já esteja em uso, porque cada registro no banco de dados precisa ter um ID exclusivo. Isso foi explicado com mais detalhes no Exercício 1.4: Criando Novos Registros. Em resumo, você deve impedir o usuário de cometer esse engano.

No próximo exercício, Exercício 2.5: Utilizando Geração Automática de Chaves, você utilizará a geração automática de chaves para evitar ter que digitar um número de ID. Neste exercício, você verificará se o ID digitado é exclusivo e, se não for, enviará o usuário para uma página de erro que descreve o problema e instrui o usuário sobre como corrigi-lo.

As Regras de Navegação permitem direcionar o usuário para a página de erro ou para a página all_records.jsp depois de verificar se o usuário digitou, ou não, um número de ID duplicado. Você designará aliases para esses dois resultados possíveis e depois os vinculará com as páginas corretas do destino. Neste exemplo, um erro na página create_record.jsp sinalizará o alias ERROR_CREATE, que enviará o usuário para a página de erro. Se o usuário preencher a página create_record.jsp corretamente, ele sinalizará o alias MAIN, que será vinculado à página all_records.jsp como de costume.

Configurando as Regras

Mostre-me
  1. Dê um clique duplo na página new_record.jsp no Project Navigator.
  2. Clique no botão Post New Listing (Colocar Nova Listagem) na página.
  3. Na visualização Propriedades, clique em Add Rule (Incluir Regra). A janela Incluir Regra de Navegação é aberta.

    A primeira regra enviará o usuário para uma página de erro denominada create_error.jsp, no caso de algo errado na criação e execução do novo registro no banco de dados.

  4. No campo Página, digite /error_create.jsp. Essa página não existe, mas para a finalidade deste tutorial, você pode simplesmente imaginar que ela existe.
  5. Clique no botão de rádio O Resultado Denominado.
  6. Digite ERROR_CREATE no campo de texto após o botão de rádio O resultado denominado.
  7. Clique no botão de rádio Somente esta página porque não existe outra página no site onde o usuário poderia acionar este erro em particular digitando um número de ID duplicado.
  8. Clique em OK.

    A próxima regra navegará para all_records.jsp se o usuário tiver digitado um número de ID válido.

  9. Clique no botão Add Rule (Incluir Regra) para abrir novamente a janela Incluir Regra de Navegação.
  10. Utilize a caixa drop-down Page (Página) para selecionar all_records.jsp.
  11. Clique na caixa de opções The outcome named (O resultado denominado) e, em seguida, digite MAIN no campo de texto após ela.
  12. Como você pode querer reutilizar essa regra em outra página (por exemplo, a página update_record.jsp), clique no botão de rádio All pages (Todas as Páginas) em This rule is used for (Esta regra é utilizada para).
  13. Clique em OK. As duas regras são exibidas agora na visualização Propriedades.

Retornando Aliases da Ação do Botão

Mostre-me

Tudo o que resta agora é colocar as novas regras de navegação em funcionamento. Você incluirá duas instruções return no código para o botão Colocar Nova Listagem. Essas instruções return chamam o alias apropriado para que o usuário seja enviado para a página apropriada conforme definido na regra de navegação.

  1. Clique no botão Post New Listing (Colocar Nova Listagem).
  2. Abra a visualização Quick Edit.
  3. Na visualização Quick Edit, localize a linha que contém } catch (Throwable e) {.

    Essa função catch é executada se o usuário tiver digitado um número de ID duplicado.

  4. Remova todo o código entre a chave de abertura { no final dessa linha e a próxima chave de fechamento } algumas linhas adiante. Não remova nenhuma das chaves.
  5. No lugar do código entre as chaves, digite este texto:

    return "ERROR_CREATE";

  6. No final do código, remova todo o código depois da última chave de fechamento } e, em seu lugar, digite este texto:

    return "MAIN";

    Essa etapa remove a ação gotoPage incluída no exercício 1.4. Você não precisa mais desse código porque as regras de navegação fazem a mesma coisa.

    O código de seu botão deve agora ser semelhante a este:

    Exemplo de Código

  7. Salve a página e teste-a, se quiser.

Opcionalmente, você pode criar uma página de erro simples denominada create_error.jsp que explique aos usuários que um erro ocorreu durante a criação de suas listagens e que devem tentar um valor de ID diferente. Essas regras de navegação podem então seres testadas tentando incluir uma nova listagem que utilize um valor de ID existente (tal como 1).

Você agora está pronto para iniciar o Exercício 2.5: Utilizando Geração Automática de Chaves.

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