Raul-Coelho / dac-jsf

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

JSF

Este projeto está estruturado com os assuntos relacionados ao JSF.

Aulas

Aula 1 - Conceitos Básicos

Aula 2 - HTML 5, Conversores e Validadores

Atividade prática

Desenvolva uma aplicação que realize as operações de CRUD para a entidade Pessoa e Dependente. As funcionalidades precisam estar disponíveis com UI (interface para o usuário) com um template usável.

public class Pessoa {
    private int id;
    private String nome;
    private CPF cpf;
    private Dependente dependente;
}
class Dependente{
    private String uuid;
    private String nome;
    private LocalDate dataDeNascimento;
}

Metodologia

Esta atividade prática está planejada em um conjunto de requisitos e para ser desenvolvida individualmente. Cada aluno deve fazer o fork deste projeto e implementar sua própria solução.

Caso surja alguma dúvida no desenvolvimento, falar de imediato via Slack.

Lembrete: Não guardem dúvidas, elas são como as dívidas. Acumulam-se e nos prejudicam :)

Requisitos

  • RF01 - Implementar os métodos acessores para as classes Pessoa e Dependente;
  • RF02 - Implementar a classe PessoasEmMemoria;
  • RF03 - Adaptar a página edit.xhtml para o arquivo de template templateAula.xhtml;
  • RF04 - Criar um Conversor para a classe Dependente;
  • RF05 - Adicionar um selectOneMenu na página edit.xhtml da pasta pessoa. Deve ser possível selecionar um Dependente e associar sua instância ao atributo da classe Pessoa
<h:selectOneMenu value="{controladorDePessoas.pessoa.dependente}" 
                 converter="converter.Dependente">
    <f:selectItems value="{controladorDePessoas.listarTodosOsDependentes()}"
                   var="dep" itemLabel="{de.uuid}" />
</h:selectOneMenu>
  • RF06 - Criar as páginas para edição e listagem da entidade Dependente;
  • RF07 - Criar um Validador para a classe Dependente. Serão válidos apenas Dependentes que possuem data de nascimento anterior a data atual e o nome não vazio;
  • RF08 - Atualizar o template para algum outro layout. O ideial seria utilizar alguma biblioteca de componentes como o Materialize, Bootstrap, etc. Contudo, caso prefiram, podem desenvolver sua própria solução;
  • RF09 - Criar uma página que permita realizar uma busca por CPF;
  • RF10 - Criar e Implementar a classe PessoasEmJDBC que é uma solução que utiliza a conexão com Banco de Dados.

About


Languages

Language:HTML 47.1%Language:Java 39.7%Language:CSS 11.6%Language:Shell 1.1%Language:Dockerfile 0.3%Language:JavaScript 0.2%