
Aula inaugural de boas vindas do instrutor.
A videoaula apresenta um panorama completo de todas as lições do Volume I do curso e orienta o aluno sobre o passo-a-passo de cada uma delas, sobre as ferramentas e recursos disponibilizados.
Navegar pelas páginas do site da Oracle
Realizar o download da JDK
Baixar e instalar o 7-Zip
Instalar o JDK
Alterar a variável PATH do sistema
Baixar e instalar a última versão do Eclipse
Disponibilizar o atalho na Área de Trabalho do Windows
Abrir o Eclipse pela primeira vez
Configurar o Workspace
Observar e manipular as visões do Eclipse
Conhecer e manipular as perspectivas do Eclipse
Por que a Perspectiva Java é a mais utilizada?
Configurar os filtros da Package Explorer
Como despoluir a Perspectiva Java
Configurar as visões da Perspectiva Java
Configurar elementos da Code Editor
Criar o projeto
Criar pacotes
Criar classes
Como colocar o programa para funcionar
Demonstração do uso do Quick Fix
Demonstração do uso do Code Assist
A Lição 1 – APRESENTANDO O ECLIPSE teve por finalidade:
Instalar o Eclipse;
Customizar o ambiente de trabalho;
Reconhecer um projeto Java dentro do Eclipse;
Manipular o Editor de Códigos;
Criar pacotes e classes;
Criar o primeiro projeto dentro do Eclipse.
Realizar o download do WildFly
Instalar o WildFly
Realizar o teste do WildFly fora do Eclipse
A Lição 2 – WEB PRIMEIROS PASSOS teve por finalidade:
Conhecer os os termos comuns usados na World Wide Web
Entender o protocolo HTTP/IP
Entender como funciona a comunicação entre portas em um computador
Instalar e testar o WildFly
Definir a aparência dos arquivos XML
Definir a aparência dos arquivos CSS, HTML e JSP
Configurar o encoding do workspace para UTF-8
Configurar o Eclipse para que ele suspenda todas as validações de arquivos XML, HTML e XHTML
Disponibilizar um atalho do Web Browser na Perspectiva Java
Equalizar a JVM do Eclipse com a JDK instalada
Instalar um Server Adapter para o WildFly
Criar uma instância do servidor WildFly
Testar o WildFly pelo Eclipse
A Lição 3 – CONFIGURANDO O ECLIPSE PARA PROJETOS WEB teve por finalidade:
Definir a aparência de arquivos XML, CSS, HTML e JSP, dentro da IDE;
Configurar o encoding do workspace para UTF-8;
Configurar o Eclipse para que ele suspenda todas as validações de arquivos XML, HTML e XHTML;
Disponibilizar um atalho do Web Browser na Perspectiva Java;
Equalizar a JVM do Eclipse com a JDK instalada;
Instalar um Server Adapter para o WildFly;
Reiniciar o Eclipse;
Criar uma instância do servidor WildFly;
Testar o WildFly pelo Eclipse.
Criar o projeto Web com Maven (o BlankApp)
Fixar o Java 1.8: - Java Compiler e - Project Facets
Criar o arquivo web.xml
Corrigir o arquivo pom.xml atualizando-o com as bibliotecas mais atuais
Comandar <Maven Update>
Configurar o servidor WildFly no projeto
Testar se o projeto foi adicionado no WildFly (rodar o projeto e constatar livre de erros
Rodar o projeto e testar os recursos do servidor
Criar uma página index.jsp
Rodar o servidor
A Lição 4 – NOÇÕES DE SERVLETS teve por finalidade:
Descrever um Servlet
Aprender noções básicas de Maven
Construir um simples aplicativo usando Maven
Analisar a estrutura básica de um projeto Web
Criar o projeto Web com Maven
Fixar o Java 1.8 (- Java Compiler e - Project Facets)
Criar o arquivo web.xml
Corrigir o arquivo pom.xml atualizando-o com as bibliotecas mais atuais
Verificar se o projeto está livre de erros antes de continuar
Configurar o servidor WildFly no projeto
Testar se o projeto foi adicionado no WildFly (rodar o projeto e constatar livre de erros)
Rodar o projeto e testar os recursos do servidor
Criar uma página index.jsp
Capacitar o Eclipse para o uso de JSF-2.3
Adicionar as dependências de wildfly-jsf no arquivo pom.xml
Reconfigurar e formatar o arquivo web.xml
Adicionar o arquivo beans.xml (habilitar o CDI)
Observar e interpretar os logs na view Console
Comandar <Refresh> na raiz do projeto
Comandar <Full publish> na view Servers e observar o comportamento
Rodar e parar o servidor
Criar as pastas pages e resources sob src/main/webapp
Criar a pasta pages/home
Criar a pasta resources/images
Criar a pasta resources/images/skin
Copiar o arquivo loader.gif para dentro da pasta resources/images
Criar a página webapp/index.html
Criar a página webapp/pages/homePage.xhtml
Sincronizar o servidor (comandar <Full publish> na view Servers)
Testar
A Lição 5 – HELLO JSF! teve por finalidade:
Conhecer o JSF
Entender o projeto BlankApp: suas possibilidades e limitações
Criar um aplicativo Web baseado em JSF
Baixar e descompactar os recursos da videoaula
Parar o servidor (se estiver ligado)
Criar as pastas animatedHtmls, logos e css, livremente dentro de src/main/webapp/resources
Criar a pasta vetruvian dentro de src/main/webapp/resources/images/skin
Criar a pasta layout dentro de WEB-INF
Adicionar os arquivos:
animated_favicon.gif e favicon.ico na pasta src/main/webapp/resources/images
blank.gif, ui-further-row.png e ui-just-row.png na pasta src/main/webapp/resources/images/skin
blankapp_topo_anime.xhtml na pasta src/main/webapp/resources/animatedHtmls
amazuLogo.gif na pasta src/main/webapp/resources/logos
img_background.gif, topo_left.png e topo_right.png na pasta src/main/webapp/resources/images/skin/vetruvian
Observar como ficou a estrutura do projeto comparando-a com a do instrutor
Adicionar código ao arquivo web.xml, após a última tag </context-param>
Criar e editar o arquivo my_style.css, dentro da pasta src/main/webapp/resources/css
Criar o pacote br.eti.amazu.infra.view.vo
Criar e codificar a classe Config dentro do pacote br.eti.amazu.infra.view.vo
Criar o pacote br.eti.amazu.infra.view.bean
Criar a classe ConfigBean dentro do pacote br.eti.amazu.infra.view.bean.
Substituir as duas anotações (ManagedBean e SessionScoped) por:
@Named
@SessionScoped
(Antecipação da Lição 11)
Dentro da pasta WEB-INF/layout, crie as páginas:
footer.xhtml
hDynaMenu.xhtml
vDynaMenu.xhtml
header.xhtml
template.xhtml
Modificar a estrutura da homePage.xhtml
Rodar o servidor e testar
Parar o servidor. Na classe ConfigBean, alterar o valor de menuType para “tiered” e testar
Parar o servidor. Na classe ConfigBean, trocar o valor de skinAnimatedTop para “T” (true) e testar novamente
Abrir o Google Chrome e testar
A Lição 6 – TEMPLATES teve por finalidade:
Entender como funciona o Facelets no JSF 2
Criar templates
Desenvolver arquivos de estilo
Criar um bean de configurações
Baixar e descompactar os recursos da videoaula
Criar o pacote br.eti.amazu.infra.util
Criar e codificar a classe FacesUtil dentro do pacote br.eti.amazu.infra.util
A Lição 7 - POR DENTRO DO JSF teve por finalidade:
Apontar noções gerais sobre o JSF Framework
Investigar o gerenciamento de beans
Aprender como funciona os escopos do JSF
Usar, de forma simples, os componentes commandButton, commandLink, form, panelGrid, panelGroup, inputText e outputText
Utilizar o Ajax como mecanismo de renderização
Manipular genericamente o FacesContext
Baixar e descompactar os recursos da videoaula
Sob o pacote br.eti.amazu.infra.view crie o pacote showcase.listener
Criar a classe PhaseTracker dentro do pacote br.eti.amazu.infra.view.showcase.listener
Adicionar código no arquivo faces-config.xml
Testar
A Lição 8 - CICLO DE VIDA DO JSF teve por finalidade:
Entender o ciclo de vida do JSF
Construir um PhaseListener customizado
Testar uma implementação de PhaseListener
Desenvolvimento de uma arquitetura básica para a criação de qualquer sistema verdadeiramente corporativo, de forma didática e passo-a-passo, ensinando todos os segredos. São mais de 100 laboratórios ao longo do treinamento, onde o aluno irá adquirir a prática necessária para se tornar um verdadeiro desenvolvedor de sistemas Java. O código apresentado ao longo das lições foi dimensionado para produzir um efeito-aprendizado rápido, contendo vários comentários para facilitar a compreensão. Assim sendo, é possível até ao leigo a consecução dos trabalhos apenas seguindo os exemplos, visto que a didática empregada é na forma de tutoria e prática de laboratório.
Tecnologias empregadas no curso:
Java;
JavaServer Faces;
PrimeFaces (8.0);
Contexts Dependency Injection (CDI);
Servidor WildFly;
Maven;
Eclipse (IDE);
Outras (7Zip, OmniFaces, Lombok, Sonar, etc.).