Curso JSF 2, PrimeFaces e CDI

Sobre o curso

Desenvolva sistemas Web com simplicidade e produtividade utilizando JavaServer Faces (JSF). Construa interfaces ricas e complexas com os componentes do Primefaces, aprenda a criar seus próprios componentes e layouts com Facelets e tire de letra o ciclo de vida. Some a isso tudo a integração com CDI e obtenha a máxima flexibilidade na camada de aplicação.

40 horas

Construa aplicações Web ricas com produtividade.

Conteúdo do curso
* Grade e conteúdo em constante atualização

  1. 1 - Desenvolvimento Web com JSF, PrimeFaces e CDI

    1. Desenvolvimento Web Java
    2. Integrando JSF 2 com CDI
    3. Leitura recomendada
    4. Tirando dúvidas
  2. 2 - Definição do projeto

    1. Descrição do problema
    2. Tecnologias escolhidas
    3. Uma visão geral sobre o domínio do projeto
    4. Criando o projeto no Eclipse
    5. Exercícios: Configurando o Tomcat no eclipse
    6. Exercícios: Criando o projeto no Eclipse
  3. 3 - Introdução ao JSF 2

    1. A motivação por trás do JSF
    2. JavaServer Faces
    3. Primeiro exemplo: formulário simples
    4. Exercícios: Criando um formulário simples
    5. Cadastro de usuários
    6. Exercícios: Criando o formulário de usuários
    7. Managed beans: Representando a interface gráfica numa classe Java
    8. Fazendo “binding” com os componentes visuais
    9. Exercícios: Adicionando comportamento à tela
    10. Listando os usuários cadastrados
    11. Exercícios: Listando os usuários
    12. A diferença entre frameworks MVC Action-based e Component-based
    13. Removendo um usuário cadastrado
    14. Exercícios: Removendo um usuário
    15. Alterando um usuário existente
    16. Exercícios: Alterando um usuário
    17. Melhorando a usabilidade na edição
    18. Exercícios: Cancelando a edição de usuário
  4. 4 - Melhorando o design da aplicação com CSS

    1. Interface gráfica na Web e CSS
    2. Importando o CSS numa aplicação JSF
    3. Exercícios: Melhorando a interface gráfica com CSS
    4. Vantagens de usar o conceito de resources do JSF 2
  5. 5 - Validação de dados e mensagens de erro e sucesso

    1. Validando os dados do usuário
    2. Exercícios: Validando os dados do usuário
    3. Melhorando as mensagens de erro
    4. Exercícios: Configurando as mensagens de erro da aplicação
    5. Melhorando o feedback para o usuário com mensagens globais
    6. Encapsulando detalhes da API do JSF através da FacesUtils
    7. Exercícios: Criando a FacesUtils e adicionando mensagens de sucesso
    8. Evitando a validação ao clicar no botão "Cancelar"
    9. Exercícios: Evitando a validação ao clicar no botão "Cancelar"
    10. Validação customizada com @FacesValidator
    11. Exercícios opcionais: Criando sua classe de validação customizada
    12. Para saber mais: Integrando Bean Validation com JSF
  6. 6 - Ciclo de vida e a árvore de componentes

    1. Ciclo de vida de uma requisição JSF
    2. A árvore de componentes
    3. Configurando a forma de armazenamento da árvore de componentes
    4. Exercícios: Armazenando a árvore de componentes no lado cliente
    5. As fases do ciclo de vida
    6. 1a fase: Restauração da view
    7. 2a fase: Aplicar os valores da requisição
    8. 3a fase: Conversão e Validação
    9. 4a fase: Atualização dos modelos
    10. 5a fase: Invocação da lógica
    11. 6a fase: Renderizar a página
    12. Debugando o ciclo de vida de uma requisição
    13. Exercícios: Implementando um PhaseListener para debugar o ciclo de vida do JSF
  7. 7 - Usando AJAX com JSF 2

    1. AJAX
    2. Suporte a AJAX no JSF
    3. Adicionando AJAX no cadastro de usuários
    4. Exercícios: Adicionando AJAX na remoção de usuário
    5. Detalhes sobre a tag f:ajax
    6. Exercícios: Submetendo formulários via AJAX
    7. Repintando as mensagens de erro e sucesso
    8. Exercícios: Repintando as mensagens de erro e sucesso
    9. Para saber mais: Navegação 100% AJAX
  8. 8 - Segurança: autenticação e autorização

    1. Funcionalidade de login
    2. Exercícios: Criando o formulário de login
    3. Navegação dinâmica entre telas
    4. Armazenando dados no escopo de sessão
    5. Exercícios: Navegação dinâmica e trabalhando com escopo de sessão
    6. Suporte a HTML5 com Pass-through Attributes
    7. Exercícios opcionais: Integrando JSF2 e HTML5
    8. Melhorando a navegação entre páginas com redirecionamento
    9. Para saber mais: Sobrevivendo a redirecionamentos com o escopo Flash
    10. Exercícios: Evitando ressubmissão de formulário
    11. Aplicando autorização às páginas
    12. Exercícios: Criando um PhaseListener de autorização
    13. Funcionalidade de logout
    14. Exercícios opcionais: Criando a funcionalidade de logout do sistema
  9. 9 - Criando templates com Facelets

    1. Evitando repetição de código nas views
    2. Criando templates com Facelets
    3. Exercícios: Criando o template principal da aplicação com Facelets
    4. Definindo um conteúdo padrão dentro do template
    5. Exercícios: Removendo o cabeçalho da página de login
  1. 10 - Integrando JSF com CDI

    1. Diminuindo o acoplamento com Injeção de Dependências (DI)
    2. CDI: Contexts and Dependency Injection
    3. Habilitando o CDI no Tomcat
    4. Registrando nossos DAOs no CDI
    5. Gerenciando a JPA com CDI
    6. Gerenciando os managed beans do JSF com CDI
    7. Exercícios: Configurando o CDI e refatorando os managed beans
    8. Problemas de abrir e fechar transações na mão
    9. Configurando Controle Transacional com CDI e anotações
    10. Exercícios: Declarando o controle transacional via anotação
    11. Favorecendo o CDI em vez do JSF
    12. Exercícios: Migrando todos os managed beans para CDI
    13. Para saber mais: Delegando o controle transacional para o servidor de aplicação
  2. 11 - Cadastro de bugs e conversão de dados

    1. Formulário de bugs
    2. Convertendo dados ao submeter o formulário
    3. Exercícios: Criando o formulário de bugs
    4. Adicionando responsáveis ao bug
    5. Exercícios: Adicionando e listando os responsáveis do bug
    6. Mantendo o estado da tela com @ViewScoped
    7. Exercícios: Prolongando o escopo com @ViewScoped
    8. Conversão de datas e problemas com fuso horário
    9. Exercícios: Configurando o fuso horário do sistema
    10. Método getter sendo invocado várias vezes
    11. Exercícios opcionais: Evitando processamento caro em métodos getters
    12. Trabalhando com sub-formulários
    13. Exercícios opcionais: Submetendo formulários parcialmente via AJAX
    14. Para saber mais: Conversor customizado com @FacesConverter
  3. 12 - PrimeFaces: melhorando a interface com componentes ricos

    1. Conjuntos de componentes
    2. PrimeFaces
    3. Melhorando o formulário de bugs
    4. Exercícios: Melhorando o formulário de bugs
    5. Aplicando máscaras nos campos
    6. Exercícios opcionais: Aplicando máscara nos campos
    7. Paginação de dados
    8. Exercícios: Paginando os registros da tabela
    9. Paginação sob demanda
    10. Exercícios: Implementando paginação sob demanda
    11. Desafio: Usando o live scrolling do PrimeFaces
    12. Repintando as mensagens da aplicação automaticamente
    13. Exercícios: Repintando as mensagens da aplicação automaticamente
    14. Melhorando o feedback para o usuário em requisições AJAX
    15. Exercícios: Melhorando o feedback com p:ajaxStatus
    16. Melhorando as mensagens de erro e sucesso
    17. Exercícios opcionais: Usando o componente p:messages e p:growl
    18. Desafio: Configurando a internacionalização do calendário
  4. 13 - Indo além com CDI e JSF

    1. A superioridade do container do CDI
    2. Registrando o FacesUtils no container do CDI
    3. Exercícios: Gerenciando e injetando o FacesUtils nos managed beans
    4. Para saber mais: Fazendo DI nos conversores e validadores customizados
    5. Diminuindo o acoplamento com Eventos e Observers do CDI
    6. Exercícios: Disparando e ouvindo eventos com CDI
    7. Qualifiers do CDI
    8. Exercícios opcionais: Usando Qualifiers do CDI
    9. Para saber mais: Qualifiers nativos do CDI
    10. Trabalhando com Estereótipos
    11. Exercícios: Stereotypes
    12. Para saber mais: Criando seu Stereotype customizado
    13. Exercícios opcionais: Stereotype customizado
    14. Para saber mais: Outros escopos de conversação do CDI
  5. 14 - Apêndice - Novidades do JSF 2.2

    1. Executando ações via requisições GET com f:viewAction
    2. Exercícios: Acessando um bug via requisição GET
    3. Para saber mais: Registrando conversores e validadores no f:viewParam
    4. Upload de arquivos com JSF 2.2
    5. Exercícios opcionais: Upload de arquivos com JSF 2
    6. Limpando a árvore de componentes
    7. Exercícios opcionais: limpando a árvore de componentes
    8. Para saber mais: Stateless views no JSF 2.2
    9. Exercícios opcionais: Habilitando Stateless view na página de login

Inscrições

Veja as próximas datas do curso e matricule-se!

*Pagamento à vista ou outras formas de pagamento entrar em contato.

Turma Data Período Local
#12 11/Março a 08/Abril (sábado) Sábado (09h às 17h) TriadWorks Vagas encerradas!
#13 10/Abril a 25/Abril (seg a sexta) Noturno (18h às 22h) TriadWorks Vagas encerradas!
#14 21/Agosto a 01/Setembro (seg a sexta) Noturno (18h às 22h) TriadWorks
#15 20/Novembro a 01/Dezembro (seg a sexta) Noturno (18h às 22h) TriadWorks
Novas turmas em breve! Para mais informações, fale com a gente.