FJ-34 - Desenvolvimento para Web com JBoss Seam
Cansado do desenvolvimento complicado ao usar componentes JSF e integrá-los com seu business tier de EJBs?
Durante esse curso desenvolveremos uma aplicação completa utilizando o JBoss Seam e investigando cada um dos seus recursos. JBoss Seam é um framework para Java EE que vem unificar o modelo de componentes usado em todo os tiers da sua aplicação e, no caso geral, fazendo a ponte entre os componentes JSF e EJB3 para que eles trabalhem de maneira uniforme.
Além da ponte entre estas tecnologias, o JBoss Seam oferece integração com uma grande gama de tecnologias: do AJAX até a definição de page flow por JBPM. Passa também pela geração de PDFs, envio de email, indexação com o Hibernate Search e JBoss Cache.
Liderado por Gavin King, o mesmo criador do Hibernate, o JBoss Seam já é até uma cobiçada especificação: a JSR 299, WebBeans. Emmanuel Bernard, que esteve no evento Falando em Java 2008, trabalha lado a lado com Gavin King desde o Hibernate 1 beta e trouxe muitas informações durante sua estadia no Brasil e conversas na Caelum. Junto com o know how adquirido em diversas consultorias com JSF, EJB3, JBoss e Hibernate, criamos este curso.
Informações
Carga Horária: 20 horas aula
Pré-requisitos: Curso FJ-26 e FJ-31 ou: sólidos conhecimentos de JSF e de EJB3 (session e entity beans com JPA, um pouco de injeção de dependências, managed beans, ciclo de vida do JSF).
Conteúdo detalhado do FJ-34
Como aprender Java
- Falando em Java
- O que é realmente importante?
- O treinamento
- Convenções de Código
- Sobre os exercícios
- Sobre os treinamento
- Indicação de bibliografia extra
- Tirando dúvidas
JBoss Seam
- WebBeans
- Integração com outros frameworks
- Pré-requisitos
- Exercícios - Instalando o Seam e o JBoss AS
- seam-gen
- Exercícios Opcionais - seam-gen
Criando o projeto Seam com JBoss Tools
- O ambiente de desenvolvimento - JBoss Tools
- Configuração do JBoss
- Exercícios - Configuração do JBoss
- Criando um novo projeto seam
- Exercícios - Criando os Projetos
- Preparando o projeto
- Exercícios - Preparando o Projeto
- Preparando o JBoss
- Exercícios - Preparando o JBoss
- Incremental Hot Deployment
- Exercícios - Exploded Deployment (Hot Deployment)
O projeto Aeris
- As entidades do domínio
- Mapeamento bidirecional
- Localidades
A camada de Apresentação
- Facelets
- Instalando o Facelets
- View Composition (Templating)
- Exercícios: Templates
- Criando Trechos e Vôos
A camada de Negócio
- Comportamento e Dados
- Gerenciamento dos Trechos de Vôos
- Exercícios - Combo Box
- Recebendo os dados da tela
- Exercícios
- Trabalhando com JPA no Managed Bean
- Exercícios
- Trabalhando com DataModel no JBoss Seam
- Exercícios
- Logger
- Exercícios
O escopo de Conversação
- Navegação
- Exercícios - Navegação
- Passando parâmetros em links via EL
- Exercícios - Parâmetros em métodos na EL
- Conversations
- Exercícios
- Exercícios - Escopo de Conversação
- Long running conversations
- Propagando contexto conversacional
- Para Saber Mais - Nested Conversations
- Bijection: @Out e @In
- Exercícios
Mais sobre o Seam - Recursos Avançados
- Seam Managed Persistence Context
- Seam Managed Transactions
- Seam Events
- Exercícios - Eventos e Observer
- Interceptors
Validando com Hibernate Validator
- Anotações do Hibernate Validator
- Exercícios
- s:validateAll
- Exercícios - Hibernate Validator
- Marcando os componentes inválidos
- Customizando mensagens
- Criando nosso validador
- Para Saber Mais - Validando vários campos de uma vez
Autenticação e Autorização
- Autenticação - Identity component
- Exercícios
- Autorização
- Autorização com anotações
- Exercícios
- Quando um erro acontece...
jBPM - Controlando Processos de Negócio
- A reserva de passagens
- Instalando o jPDL
- Opções a mais do jPDL
- Exercícios
- Buscando e Reservando Passagens
- Exercício - Passagem
- Configuração do jBPM
- Exercícios - Configurando o jBPM
- Processos de Negócio
- Exercícios - Definindo o Processo
- jBPM Actor
- Exercício - Actor
- Iniciando o Processo
- Exercícios - Iniciando o Processo
- Confirmando os Pagamentos
- Exercícios - Confirmando os Pagamentos
- Fazendo o CheckIn
- Exercícios - Fazendo o CheckIn
Apêndice A - Internacionalização
- MessageBundle
- Exercícios - Lendo as mensagens do arquivo
- Trocando a lingua do sistema
- FacesMessages
Apêndice B - Testando com o Seam
- Testes unitários
- Exercício - Teste Unitário
- Testes de integração
