Exercício 1.4: Criando Novos Registros

Antes de iniciar, você precisa concluir o Exercício 1.3: Testando o Web site.

Neste exercício, você criará uma página que permite que os usuários criem novos anúncios classificados e os coloquem no banco de dados. Primeiro você criará um registro relacional para representar um novo registro no banco de dados, e em seguida você criará uma visualização do registro em sua página como um conjunto de campos de entrada.

Criando o Registro Relacional

Mostre-me
  1. Dê um clique duplo no arquivo new_record.jsp na visualização Project Explorer para abri-lo.
  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.

    Se aparecer uma mensagem de aviso instruindo que não foi possível estabelecer uma conexão ao banco de dados, você deixou o servidor em execução depois de testar o Web site. Se isso acontecer, clique em Cancelar em cada diálogo e pare o servidor conforme explicado em Parando o Servidor no Exercício 1.3: Testando o Web site.

  5. No campo Nome, digite create_record.
  6. Em Criar controles para, clique em Criar um novo registro.
  7. Certifique-se de que Incluir controles de entrada/saída para exibir o registro na página da Web esteja selecionado.

    A janela Incluir Registro Relacional deverá ser semelhante a esta:

    Janela Incluir Registro Relacional

  8. Clique em Avançar.
  9. Na caixa Tabela, clique na tabela W5SAMPLE.ADS.
  10. Clique em Avançar.
  11. Clique em Avançar novamente. A página Configurar Controles de Dados é aberta.

Personalizando a Visualização do Registro Relacional

Mostre-me

A página Configurar Controles de Dados ajuda a personalizar a visualização do registro relacional. Por exemplo, é possível alterar as colunas, as etiquetas dos campos e o botão Submeter em seu formulário de entrada. Depois de concluir essas etapas, um formulário de entrada totalmente funcional estará na página.

  1. 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 em seu formulário de entrada:
  2. Reorganize os campos na seguinte ordem, de cima para baixo:
    1. ID
    2. TITLE
    3. DESCRIPTION
    4. MAINCATEGORY
    5. PRICE
    6. PHONE
    Para alterar a ordem dos campos, clique em um nome de campo e depois clique nas setas Para Cima ou Para Baixo .
  3. Renomeie as etiquetas como preferir. Por exemplo, abrevie a etiqueta "Maincategory:" para apenas "Category:".

    Para renomear as etiquetas geradas para os campos de entrada, clique em uma etiqueta na coluna Etiqueta. O ícone do mouse muda para um cursor para que você possa digitar o novo texto.

  4. Clique em Opções. A janela Opções é aberta.
  5. Certifique-se de que a opção Botão Submeter esteja selecionada.
  6. Digite Colocar Nova Listagem no campo Etiqueta.
  7. Clique em OK.

    A janela Incluir Registro Relacional deverá ser semelhante a esta:

    Janela Incluir Lista de Registros Relacionais

  8. Clique em Concluir para gerar o formulário de entrada. Ele deve ser semelhante a este:

    Aparência da Página Atual

    O formulário tem um campo Mensagens de Erro. Isso não significa que seu projeto tenha erros; esse campo marca o lugar onde os erros serão exibidos se houver algum quando o usuário submeter o formulário.

Programando o Botão Submeter

Mostre-me

Quando o formulário de entrada é submetido, a página incluirá automaticamente o novo registro no banco de dados. É possível programar o botão Colocar Nova Listagem para retornar à página all_records.jsp para que você possa visualizar imediatamente o novo registro no banco de dados. Para isso, faça o seguinte:

  1. No arquivo new_record.jsp, clique no botão Colocar Nova Listagem criado no formulário na página da Web.
  2. Abra a visualização Quick Edit.

    A visualização Quick Edit em geral está no centro da parte inferior do workbench, nas guias próximas à visualização Propriedades. Se você não conseguir localizar a visualização Quick Edit, vá para a barra de menus e clique em Janela > Mostrar Visualização > Quick Edit.

    A visualização Quick Edit é um editor Java dependente do contexto que pode ajudar a codificar eventos para os componentes Faces. A visualização Quick Edit agora contém o código gerado que manipula a criação de um novo registro no banco de dados, como é mostrado a seguir:

    Exemplo de Código

  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 nova 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 OK.
  8. O código do evento para seu botão deve ser semelhante a este:

    Exemplo de Código

  9. Salve o arquivo e, em seguida, execute a página em seu servidor de teste, se quiser. Ao executar a página no servidor de teste, você pode incluir novos registros e retornar à página all_records.jsp para visualizá-los.

Prevenindo Chaves Duplicadas

Como a coluna de ID é uma chave primária na tabela ADS, não é possível incluir registros com um valor de ID que já exista na tabela. No Módulo 2, você verá como utilizar a geração automática de chaves para criar automaticamente uma nova chave não utilizada para cada registro.

Até lá, você precisará digitar um número de ID não utilizado nessa página para incluir um novo registro. Os registros fornecidos com o banco de dados utilizam números de ID de 1 a 22, portanto, você pode digitar qualquer número acima de 22 como uma chave primária. Certifique-se de não duplicar chaves se você digitar mais que um registro.

Ligando a Entrada ao Registro Relacional (Opcional)

Mostre-me

O formulário de entrada na página é um conjunto de campos de entrada JavaServer Faces que foram ligados ao registro relacional que você criou. Lembre-se que você criou o registro relacional para representar um novo registro na tabela ADS do banco de dados. Ligação é um método pelo qual você pode vincular um componente de entrada JavaServer Faces a uma coluna no registro relacional.

Quando você criou o registro relacional, o assistente ligou automaticamente todas as suas colunas aos campos de entrada na página. Se você quiser fazer alterações manualmente, poderá ligar outras colunas a outros campos de entrada. Para ligar uma coluna do registro relacional ao campo de entrada, arraste a coluna da visualização Dados da Página para o campo. Você pode experimentar esse processo excluindo e recriando o campo de entrada Descrição em seu formulário. Aprenda Mais Sobre a Visualização Dados da Página.

As etapas a seguir são fornecidas para ilustrar o conceito do campo de entrada e o processo de ligação; no entanto, seguir essas etapas é opcional neste tutorial. Se você não quiser fazer isso, vá para o Exercício 1.5: Criando uma Página de Atualização.

  1. No arquivo new_record.jsp, clique no campo de entrada Descrição.
  2. Pressione a tecla Excluir.
  3. Na visualização Paleta, clique na gaveta Componentes Faces para expandi-la.
  4. Arraste um componente Entrada da Paleta para a célula que continha o campo de entrada Descrição que você acabou de excluir.

    Existe agora um campo de entrada nessa célula, mas não existe texto tal como {ID} ou {TITLE} dentro dele porque esse campo de entrada não está ligado a nenhuma coluna.

  5. Na visualização Dados da Página, arraste a coluna DESCRIPTION para o componente Entrada que você acabou de criar. O texto dentro do componente Entrada muda para indicar que ele agora está ligado à coluna DESCRIPTION, como nesta figura:

    Ligando uma Coluna ao Campo de Entrada

  6. Salve o arquivo e, em seguida, execute a página no servidor de teste, se desejar.

Agora você pode criar e modificar seus próprios formulários de entrada JavaServer Faces. Você está pronto para iniciar o Exercício 1.5: Criando uma Página de Atualização.

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