JSF2 e AJAX. Desenvolvimento Web com. Construa aplicações Web mais interativas e elegantes

Tamanho: px
Começar a partir da página:

Download "JSF2 e AJAX. Desenvolvimento Web com. Construa aplicações Web mais interativas e elegantes"

Transcrição

1 Desenvolvimento Web com JSF2 e AJAX Construa aplicações Web mais interativas e elegantes Wagner Borges é formado em Sistemas de Informação pela FACID e especializado em Sistemas de Informação para Web. Analista de Sistemas pela Agência de Tecnologia do Piauí, trabalha com desenvolvimento Java na Unidade de Tecnologia da SEFAZ-PI desde Fundador do site com com foco em Java, JSF e PrimeFaces. Ellen Gera de Brito Moura é formado em Ciência da Computação pela UESPI e especializado em Tecnologias para Desenvolvimento Web. Analista de Sistemas pela Agência de Tecnologia do Piauí e gerente de Sistemas Corporativos da SEFAZ- PI. Professor das disciplinas Banco de Dados, Estrutura de Dados e Análise e Projeto de Sistemas na Faculdade de Tecnologia do Piauí. Mantém o site com foco em Engenharia Ágil. AJAX pode ser definido como um conjunto de tecnologias que possibilita a troca de informações assíncronas entre o cliente (navegador) e o servidor Web. Dessa forma, é possível fazer requisições ao servidor sem necessidade de atualizar a página por completo. Essa tecnologia está bastante difundida e a versão 2.0 do Java Server Faces (JSF2) trouxe uma integração nativa com AJAX. Este artigo apresenta os principais recursos para desenvolvimento AJAX utilizando tags do próprio JSF2. Além disso, foi desenvolvida uma aplicação-exemplo mostrando a possibilidade do uso desses recursos com PrimeFaces, uma das suítes de componentes em evidência no momento. 51

2 : : : : mplementar aplicações Web mais elegantes, dinâmicas e interativas tornou-se um dos principais objetivos do desenvolvimento Web. Nesse contexto, o uso de tecnologias AJAX (Asynchronous Javascript and XML) popularizou-se nos últimos anos por possibilitar solicitações assíncronas de informação entre cliente (navegador) e servidor Web. Como benefício, é possível citar a diminuição da taxa de transferência de dados entre cliente e servidor, por não obrigar a renderização da página-cliente por completo, e a melhora na usabilidade dos aplicativos Web. Para atender a essa demanda, existem diversos frameworks que facilitam e aumentam a produtividade na construção de aplicações Web utilizando AJAX. O JavaServer Faces (JSF) é uma dessas frameworks e, por ser orientado a componentes e eventos, oferece uma forma intuitiva para o uso de AJAX. O JSF possui integração com vários outros frameworks e suítes de componentes, como, por exemplo, PrimeFaces, RichFaces, IceFaces e OpenFaces. Na versão 1.2 do JSF os recursos AJAX eram obtidos através dessas bibliotecas, sem existir um padrão. Entretanto, com o foco em oferecer um ambiente de desenvolvimento mais prático e produtivo, o JSF trouxe na sua versão 2.0 (JSF2) uma API nativa para AJAX. Deste modo, é possível que requisições assíncronas sejam realizadas sem a necessidade de utilizar bibliotecas de terceiros. Agora, existe no JSF2 uma tag própria que fornece as funcionalidades AJAX. Se você está familiarizado com o uso de a4j:support ou p:ajax do RichFaces e PrimeFaces, respectivamente, não terá problema em assimilar e utilizar os novos componentes AJAX presentes no JSF2. Nesse texto serão apresentadas várias listagens com exemplos práticos do uso de recursos da API AJAX nativa ao JSF2. As listagens mostrarão como enviar requisições, renderizar uma visão parcialmente e processar uma visão parcialmente. Na sequência, é listado e comentado passo a passo o desenvolvimento de um pequeno aplicativo Web de leilão de um centavo utilizando AJAX, JSF2 e a biblioteca PrimeFaces que atualmente é a principal suíte de componentes com suporte ao JSF2. Envio de requisição AJAX com JSF2 O JSF2 possui uma tag para realizar solicitações AJAX ao servidor. Essa tag cria comportamentos, do lado do cliente, que são associados a um componente de interface do usuário. Sendo um comportamento, a tag depende de uma interação do usuário para que seja executada. Para exemplificar esse recurso, uma página Web contendo um campo de texto será criada. A cada tecla pressionada no campo de texto uma requisição AJAX será enviada ao servidor. Uma classe chamada ExemploAjaxController, contendo um atributo chamado de exemplo, será criada para funcionar como o Managed Bean. O atributo exemplo estará vinculado ao campo de texto da página Web e será atualizado a cada requisição AJAX realizada, como na Listagem 1. Listagem 1. Managed Bean para exemplificar uma requisição AJAX (ExemploAjaxController.java). import javax.faces.bean.managedbean; public class ExemploAjaxController { private String exemplo; public String getexemplo() { return exemplo; public void setexemplo(string exemplo) { this.exemplo = exemplo; Observe o uso das na classe ExemploAjaxController. Essa é a forma que um ManagedBean é definido no JSF2, não sendo necessário o uso de configuração no arquivo faces-config.xml. O Managed Bean da Listagem 1 está ligado à página web index. xhtml que possui dois componentes: um <h:inputtext /> responsável por disparar a requisição e um <h:outputtext /> que será responsável por exibir o novo valor do atributo exemplo alterado a cada evento keyup do componente <h:inputtext />. A Listagem 2 mostra o código desta página. Listagem 2. Página Web contendo os componentes JSF (index.xhtml). <h:inputtext value= #{exemploajaxcontroller.exemplo > <f:ajax event= keyup render= outid /> </h:inputtext> <h:outputtext id= outid value= #{exemploajaxcontroller.exemplo /> O atributo event <f:ajax event="keyup" render="outid"/> No atributo event é informado qual evento JavaScript vai disparar a solicitação e no caso da Listagem 2 é com base no evento onkeyup. Observe que o nome utilizado no atributo event da tag <f:ajax/> é keyup. O atributo event recebe uma string contendo o nome do evento que dispara a requisição AJAX. Se nenhum nome for especificado, um comportamento padrão com base no componente-pai será aplicado. Para componentes de ação como <h:commandbutton /> ou <h:commandlink /> o comportamento padrão é action, para componentes de entrada de dados o com- 52

3 portamento é o valuechange. Se um evento que não existe for especificado, um erro será disparado quando a página for executada. Na próxima seção é apresentado como informar ao JSF quais componentes da página deseja-se atualizar ao final da requisição. Renderizando a visão parcialmente Com JSF 1.2, e sem ajuda de um framework AJAX, a cada requisição realizada toda página era submetida e retornada ao usuário. Era simples, não havia uma preocupação com que partes da página JSF fossem atualizadas. Esse comportamento é indesejado quando apenas uma pequena área da página precisa ser reexibida. O atributo render O atributo render da tag <f:ajax /> é o responsável por tornar possível a reexibição parcial da página. Observe no trecho de código da Listagem 2 que o conteúdo do atributo render é o id do componente que será reexibido ao final da requisição AJAX. <h:inputtext value= #{exemploajaxcontroller.exemplo > <f:ajax event= keyup render= outid /> </h:inputtext> <h:outputtext id= outid value= #{exemploajaxcontroller.exemplo /> O atributo render suporta os seguintes valores: quando nenhum outro é informado. requisição. lário do componente que disparou a requisição. vírgula. Usando-se EL é possível determinar, em tempo de execução, a lista de ids dos componentes que serão atualizados ao final da requisição. Nesse caso, funciona da seguinte maneira: tendo os valores id1 e id2. Na próxima requisição AJAX que acontecer, os componentes dos referidos ids, id1 e id2 serão atualizados. tenham sido adicionados à lista de ids. Nesse caso, os componentes dos id3 e id4 só serão atualizados na próxima requisição. Opcionalmente, o exemplo mostrado acima poderia ter sido feito utilizando-se a API Java Script do JSF2 diretamente. A Listagem 3 mostra como ficaria a página do exemplo da Listagem 2 com o uso dessa API. Listagem 3. Página mostrando o uso da API Java Script (index.xhtml). <h:head> <h:outputscript name= jsf.js library= javax.faces </h:head> <h:inputtext onkeyup= jsf.ajax.request(this, event, {render: form:outid ); value= #{ExemploAjaxController.exemplo > </h:inputtext> <h:outputtext id= outid value= #{ExemploAjaxController. exemplo /> Alguns pontos importantes precisam ser observados no exemplo da Listagem 3. Primeiro, é necessário que se faça a inclusão do arquivo jsf.js. Esse arquivo fornece todas as funcionalidades Java Script necessárias ao funcionamento do AJAX. Segundo, observe que agora o id informado não é mais o id do componente, mas o id do componente no cliente, ou seja, id após a página ter sido transformada em HTML. Esse id é formado pelo nome do formulário seguido de dois pontos mais o id do componente. O atributo listener Outro atributo interessante do componente <f:ajax /> é o atributo listener. Com esse atributo é possível informar, através de EL, um método do Managed Bean para ser executado quando a requisição AJAX for disparada. No exemplo da Listagem 4, um método chamado validarcpf será executado a cada requisição AJAX enviada pelo usuário. A Listagem 4 mostra como ficou a classe ExemploAjaxController depois de adicionado o novo método. Listagem 4. Classe ExemploAjaxController.java depois de adicionar o método toupper. import javax.faces.bean.managedbean; public class ExemploAjaxController { private String cpf; public void validarcpf(){ if(cpf.lenght()==11){ FacesContext.getCurrentInstance().addMessage(null, new FacesMessage( CPF Válido! )); else { FacesContext.getCurrentInstance().addMessage(null, new FacesMessage( CPF Inválido! )); //getters e setters aqui 53

4 : : : : O método validarcpf, quando executado, apenas verifica o tamanho do conteúdo do atributo cpf e envia uma mensagem que será exibida de acordo com a regra de validação. A Listagem 5 mostra o código da página index.html após ter sido alterada para que o método fosse chamado. A Listagem 7 mostra o trecho de código alterado da página index.xhtml contendo os dois novos componentes. O componente <h:commandbutton />, responsável por realizar a solicitação AJAX, e o componente <h:outputtext /> que será atualizado sempre que uma requisição for finalizada. Listagem 5. Classe ExemploAjaxController.java depois de adicionar o método validarcpf. <h:inputtext value= #{ExemploAjaxController.cpf > <f:ajax event= blur render= msg listener= #{exemploajaxcontroller.validarcpf /> </h:inputtext> <h:messages id= msg /> Observe agora que sempre que inputtext perde o foco, o componente h:message é atualizado exibindo uma mensagem. Isso acontece porque a cada requisição feita o método validarcpf está sendo executado. Nos próximos exemplos, será mostrado como adicionar capacidade AJAX a outros componentes. O primeiro componente será o <h:commandbutton />. Nesse exemplo, a cada click no componente, o valor exibido em um <h:outputtext /> será incrementado em um centavo. Para o exemplo, um novo atributo será adicionado à classe ExemploAjaxController. Um novo método também será adicionado com a responsabilidade de incrementar o valor. A Listagem 6 mostra a classe alterada contendo o novo atributo e o novo método. Listagem 7. Página index.xhtml com o componente <h:commandbutton>. <h:outputtext id= idvalor value= #{ExemploAjaxController.valor > <f:convertnumber locale= pt_br type= currency /> </h:outputtext> <h:commandbutton value= Lance > <f:ajax render= idvalor listener= #{ExemploAjaxController.incrementaValor /> </h:commandbutton> Observe que a tag <f:ajax /> agora está entre a tag do componente <h:commandbutton />, tornando-o responsável por realizar a requisição AJAX. No atributo render é informado o id do componente que será atualizado, que no exemplo é um outputtext. No atributo listener é informado qual o método será executado, que na demonstração é o método incrementavalor, responsável por incrementar em um centavo o conteúdo da variável valor. A figura 1 mostra o que foi descrito nas Listagens 6 e 7. Listagem 6. Classe ExemploAjaxController.java depois de adicionar o método incrementavalor. import javax.faces.bean.managedbean; public class ExemploAjaxController { private String exemplo; private double valor; Figura 1. Tela da página index.xhtml em execução. Adicionando AJAX a um grupo de componentes Com a tag <f:ajax /> também é possível adicionar comportamento AJAX a vários componentes de forma simultânea. Observe o trecho de código da Listagem 8. public void toupper(){ setexemplo(exemplo.touppercase()); public void incrementavalor(){ valor = valor ; //getters e setters aqui 54

5 Listagem 8. Aplicando AJAX a vários componentes. <f:ajax> <h:selectbooleancheckbox> <h:inputtext> <h:commandbutton> </f:ajax> No exemplo da Listagem 8, a tag <f:ajax /> será adicionada usando o evento AJAX padrão de cada componente: tanto nenhum comportamento AJAX será adicionado. onchange. AJAX. Se preferir, um evento pode ser informado na tag <f:ajax />, através do atributo event. Nesse caso, o evento seria aplicado a todos os componentes no interior da tag. Observe o trecho de código da Listagem 9. Listagem 9. Aplicando AJAX a vários componentes informando o valor do atributo event. <f:ajax event= click > <h:selectbooleancheckbox> <h:inputtext> <h:commandbutton> <f:ajax event= focus /> </h:commanbutton> </f:ajax> No exemplo da Listagem 9, o evento onclick será adicionado ao p:panelgrid, h:inputtext e h:commandbutton, que também poderá disparar sua requisição AJAX utilizando o evento onfocus.c Existem situações em que o evento definido na tag <f:ajax /> não é propagado para todos os componentes no interior da tag. Observe esse comportamento no trecho de código da Listagem 10. Listagem 10. Aplicando AJAX a vários componentes sem propagar o event para todos os componentes. <f:ajax event= valuechange > <h:selectbooleancheckbox> <h:inputtext> <h:commandbutton> <f:ajax event= focus /> </h:commanbutton> </f:ajax> No exemplo acima, o evento aplicado é o valuechange. Observe que o evento pode ser aplicado aos componentes h:selectbooleancheckbox e h:inputtext, mas não poderá ser aplicado ao h:panelgrid, pois este componente não possui um evento AJAX padrão. O evento também não será aplicado ao h:commandbutton, pois este componente não suporta esse evento, nesse caso apenas o onfocus será aplicado. Interceptando as requisições AJAX A tag f:ajax possui um atributo que permite, através de JavaScript, interceptar as requisições AJAX em três momentos: no início da requisição, quando a requisição finalizar com sucesso e ao finalizar com sucesso. Imagine que você desejasse interceptar uma requisição AJAX no momento em que ela estivesse acontecendo. Por exemplo, para mostrar uma imagem do tipo aguarde processamento no início da requisição e ocultá-la ao final da requisição. Isso é possível através do atributo onevent. O atributo espera uma string contendo o nome de uma função JavaScript. A função deverá possuir um parâmetro que vai tornar-se um objeto contendo, dentre outros atributos, o atributo status. Esse atributo poderá assumir um dos seguintes valores: cesso; Para exemplificar, uma página contendo um componente h:commandbutton será criada. O componente será o responsável por realizar a solicitação AJAX. Uma função JavaScrit chamada de intercepta será criada para ser executada em cada uma das três fases da requisição. A Listagem 11 mostra o código da página. Observe no trecho de código da Listagem 11 que apenas o nome da função é informado no atributo onevent. As figuras 2, 3 e 4 mostram a sequência em que as mensagens aparecem para o usuário. 55

6 : : : : Listagem 11. Página com script para interceptar a requisição AJAX. <h:head> <script type= text/javascript > function intercepta(requisicao){ if(requisicao.status== begin ) { alert( Início da Requisição ); if(requisicao.status== success ) { alert( Requisição executada com sucesso ) if(requisicao.status== complete ) { </script> </h:head> alert( Requisição finalizada ) <h:commandbutton value= AJAXTeste > <f:ajax onevent= intercepta /> </h:commandbutton> <h:inputtext Processamento parcial da visão Até o momento apenas foi apresentado como atualizar partes da página que realiza uma solicitação AJAX. Mas como utilizar a tag f:ajax para informar que partes da página deverão ser enviadas ao servidor para ser processada? O atributo execute É através do atributo execute que é informado quais componentes devem ser enviados ao servidor durante uma solicitação AJAX. O atributo pode assumir os seguintes valores: viados ao servidor para processamento. to no lado do servidor. ção AJAX. contém o componente que disparou a requisição. A Listagem 12 mostra um exemplo em que apenas o formulário é submetido ao servidor para processamento. Lembrando que, se nenhum comportamento for informado, o comportamento padrão é enviar apenas o próprio componente. Esse não é o comportamento que é sempre desejado. Na verdade, geralmente o que se deseja é apenas enviar um formulário e todos os componentes de entrada de dados que estão em seu interior. O trecho de código da Listagem 12 mostra esse comportamento. Listagem 12. Submetendo apenas um formulário para processamento no servidor. Figura 2. Início da requisição. <h:outputlabel value= /> <h:inputtext /> <h:outputlabel value= Senha: /> <h:inputsecret /> <h:commandbutton value= Entrar > <f:ajax event= click listener= #{ExemploAjaxController.login /> </h:commandbutton> Figura 3. Requisição executada com sucesso. Figura 4. Final da requisição. JSF2, AJAX e PrimeFaces O PrimeFaces tem se destacado como uma das principais bibliotecas de terceiros que trabalham integradas ao JSF. Um dos principais motivos para essa adoção é o fato desse framework ter sido o primeiro a disponibilizar uma suíte de componentes compatíveis com JSF2. Atrelado a isso vem o fato do PrimeFaces ser bastante simples e possuir componentes para quase todas as necessidades do desenvolvedor JSF, inclusive com suporte a AJAX. Para demonstrar o uso do PrimeFaces e JSF2 será desenvolvido uma aplicação na qual a necessidade do uso de AJAX é evidente. 56

7 O sistema em questão é um site de leilão de um centavo, onde aparecem alguns produtos com um tempo que marcam o fim do leilão. Para o leilão não finalizar ao final do tempo é necessário que se dê um lance no produto. O lance incrementa o preço do produto em um centavo e reinicia o tempo do leilão. Todos esses eventos acontecem enviando-se requisições AJAX ao servidor. O exemplo será feito utilizando-se a IDE NetBeans com PrimeFaces 2.2 e Glassfish 3.1. O projeto será composto dos seguintes artefatos: uma classe de domínio chamada de Produto, um Managed Bean e a página JSF. A estrutura do projeto é mostrada na figura 5. Além das classes Java, o projeto ainda possui algumas imagens e uma pasta chamada blitzer que corresponde ao skin que será aplicado aos componentes do PrimeFaces. Listagem 13. Classe de domínio Produto (Produto.java). public class Produto { private long id; private int tempo; private String imagem; private String descricao; private double valorinicial; //métodos getters e seterrs aqui do através do componente p:poll do primefaces. produto. Quando executado, o método incrementa o valor do produto em um centavo e reinicia o tempo do leilão do produto. O trecho de código da Listagem 14 mostra a classe LeilaoController e os métodos descritos acima. A escolha do para o ManagedBean se deve ao fato de que todos os usuários da aplicação devem ver, de forma simultânea, quais produtos estão recebendo lance, qual o valor atual dos produtos e qual o tempo de leilão atual de cada produto. De modo que um lance de usuário deve ser refletido para cada usuário do sistema. Os principais componentes do PrimeFaces usados no exemplo são: p:poll, p:patagrid e o p:panel. O componente p:poll é o componente responsável por enviar, de tempos em tempos, uma requisição ao servidor e executar o método atualizacronometro. O componente p:datagrid será utilizado para listar todos os produtos. Cada produto será descrito em um componente p:panel. O código da página JSF é exibido na Listagem 15. A figura 6 mostra o exemplo em execução. Figura 5. Estrutura do projeto. O trecho de código mostrado na Listagem 13 corresponde à classe Produto. A referida classe possui apenas quatro atributos, abaixo a descrição de cada um deles: A classe LeilaoController é o Managed Bean responsável por receber as requisições enviadas pela página JSF. A classe possui, além dos métodos assessores e modificadores (getters e setters), mais três métodos. Os métodos serão descritos logo abaixo: lista de produtos para serem exibidos em um componente p:datagrid. corre todos os produtos e decrementa em um segundo o tempo do leilão. O método é executado de um em um segun- Considerações finais Figura 6. Exemplo em execução. Neste artigo foram apresentados os principais recursos AJAX presentes na mais nova especificação do framework Java Server Faces, o JSF2. O objetivo principal foi destacar que nessa nova versão o JSF trouxe recursos AJAX de forma nativa. Diversos exemplos fo- 57

8 : : : : Listagem 14. ManagedBean (LeilaoController.java). package mundoj.controller; import java.util.arraylist; import java.util.list; import javax.faces.bean.applicationscoped; import javax.faces.bean.managedbean; import = leilao public class LeilaoController { private List<Produto> produtos = new ArrayList(); private Produto produtoselecionado; public LeilaoController() { carregaprodutos(); public void lance() { produtoselecionado.setvalorinicial(produtoselecionado.getvalorinicial() ); produtoselecionado.settempo(20); public void atualizacronometro() { for (Produto produto : produtos) { if (produto.gettempo() > 0) { produto.settempo(produto.gettempo() - 1); private void carregaprodutos() { Produto produto = new Produto(); produto.setid(1); produto.setdescricao( ipad Apple ); produto.setimagem( ipad.jpg ); produto.setvalorinicial(0.0); produto.settempo(20); produtos.add(produto); Produto produto1 = new Produto(); produto1.setid(2); produto1.setdescricao( playstation 3 ); produto1.setimagem( ps3.jpg ); produto1.setvalorinicial(0.0); produto1.settempo(20); produtos.add(produto1); Produto produto3 = new Produto(); produto3.setid(3); produto3.setdescricao( iphone Apple ); produto3.setimagem( iphone.jpg ); produto3.setvalorinicial(0.0); produto3.settempo(20); produtos.add(produto3); // getters e setters omitidos Listagem 15. Código da página JSF que corresponde ao exemplo. <p:poll update= listaprodutos interval= 1 actionlistener= #{leilao.atualizacronometro /> <p:datagrid id= listaprodutos value= #{leilao.produtos var= produto columns= 4 paginator= true paginatorposition= both > <p:column> <p:panel id= panelproduto header= #{produto.descricao style= text-align: center > <h:panelgrid style= width: 100% columns= 1 > <h:graphicimage url= #{produto.imagem /> <h:outputtext style= font-family: Heveltica;color:blue; font-weight: bold;font-size: 18pt value= #{produto.tempo /> <h:outputtext value= #{produto.valorinicial style= font-family: Heveltica;color:red; font-weight: bold;f> <f:convertnumber type= currency locale= pt_br /> </h:outputtext> <h:commandbutton image= img_bnt_lance.png value= Lance action= #{leilao.lance > <f:setpropertyactionlistener value= #{produto target= #{leilao.produtoselecionado /> <f:ajax render= panelproduto /> </h:commandbutton> </p:panel> </p:column> </p:datagrid> ram mostrados para exemplificar os principais recursos e usos da tag <f:ajax /> do JSF2. Por fim, uma aplicação-exemplo, utilizando recursos AJAX do JSF2 em conjunto com a suíte de componentes do PrimeFaces, foi apresentada para evidenciar o uso prático dos novos recursos. Referências GUJ Discussões sobre o tema do artigo e assuntos relacionados Discuta este artigo com 100 mil outros desenvolvedores em 58

MÓDULO Programação para Web 2

MÓDULO Programação para Web 2 MÓDULO Programação para Web 2 USANDO O JSF Continuação Interdependência e Injeção Instâncias de Managed Beans podem conversar entre si para dividir o processamento das requisições dos usuários de acordo

Leia mais

Anotações e Navegação no JSF 2.0

Anotações e Navegação no JSF 2.0 1/16 Anotações e Navegação no JSF 2.0 Simplifique a navegação e a configuração XML com o JSF 2.0 Aprenda a utilizar anotações e navegações implícita e condicional em suas aplicações JSF 2.0 MARCEL TOKARSKI

Leia mais

AJAX Reverso. Comet com DWR. baseado em

AJAX Reverso. Comet com DWR. baseado em AJAX Reverso baseado em Comet com DWR Aprenda a trabalhar com o AJAX Reverso, técnica ainda pouco explorada que proporciona aos sistemas Web a funcionalidade de atualizar os clientes conforme o servidor

Leia mais

Frameworks RIA para JSF lado a lado

Frameworks RIA para JSF lado a lado Maykon Junior Vaz (maykonjv@gmail.com): é graduando em Bacharelado em Sistemas de Informação na Universidade do Estado de Minas Gerais Frutal, onde desenvolveu diversos projetos Web utilizando tecnologia

Leia mais

Experiência em missão crítica de missão crítica

Experiência em missão crítica de missão crítica 2 / 49 Experiência em missão crítica de missão crítica Pioneira no ensino de Linux à distância Parceira de treinamento IBM Primeira com LPI no Brasil + de 30.000 alunos satisfeitos Reconhecimento internacional

Leia mais

JavaServer Faces (JSF) Leonardo Murta (leomurta@ic.uff.br)

JavaServer Faces (JSF) Leonardo Murta (leomurta@ic.uff.br) JavaServer Faces (JSF) Leonardo Murta (leomurta@ic.uff.br) Especificação/IDE/Implementação Esse curso foi preparado em 03/2015 usando a seguinte especificação, IDE e implementação Especificação JavaServer

Leia mais

JavaServer Faces. Parte 2

JavaServer Faces. Parte 2 JavaServer Faces Parte 2 Recapitulando Aplicações web são aplicações que executam em um servidor Recebem requisições de usuários Retornam respostas ao usuário Browsers só entendem e exibem html O servidor

Leia mais

Minha primeira aplicação utilizando Java Server Faces + Glassfish

Minha primeira aplicação utilizando Java Server Faces + Glassfish Minha primeira aplicação utilizando Java Server Faces + Glassfish Este tutorial apresenta de forma simples, como iniciar no desenvolvimento com o framework Java Server faces 1.2, utilizando-se o servidor

Leia mais

Java Server Faces 2.0 Rich Faces 4.0

Java Server Faces 2.0 Rich Faces 4.0 DEPARTAMENTO DE INFORMÁTICA - DI Java Server Faces 2.0 Rich Faces 4.0 Quais as novidades e alterações nas novas versões das tecnologias? Pablo Bruno de Moura Nóbrega Analista de Sistemas pablo.nobrega@uece.br

Leia mais

Centro Universitário de Formiga UNIFOR-MG Ciência da Computação Disciplina: Professor: Alunos: Hibernate V alidator Formiga, Outubro 2011.

Centro Universitário de Formiga UNIFOR-MG Ciência da Computação Disciplina: Professor: Alunos: Hibernate V alidator Formiga, Outubro 2011. Centro Universitário de Formiga UNIFOR-MG Ciência da Computação 8º período Disciplina: Laboratório de Programação IV Professor: Michel Pires Silva Alunos: Valter Ribeiro Lima Júnior Hibernate Validator

Leia mais

JSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

JSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul JSF e PrimeFaces Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Introdução Desenvolvimento Web Java Server Faces Exercício 2 Introdução Ao longo dos anos diversas linguagens de programação foram

Leia mais

Além do JSF: Matriz de Campos com Recursos e Práticas Incomuns

Além do JSF: Matriz de Campos com Recursos e Práticas Incomuns Décio Heinzelmann Luckow (decioluckow@gmail.com): é bacharel em Sistemas de Informação pela Univille e pósgraduando em Gestão de Projetos pela Sustentare Escola de Negócios. Já trabalhou com as linguagens

Leia mais

Melhorando o desempenho de aplicações em JSF

Melhorando o desempenho de aplicações em JSF capa_ Melhorando o desempenho de aplicações em JSF Aumente a escalabilidade através de configurações e refatorações efetivas Adriano Castro adrianocastro189@gmail.com é formado em Ciência da Computação

Leia mais

Projetos do MyFaces 1/12

Projetos do MyFaces 1/12 1/12 JSF com MyFaces e Tomahawk Aprenda a utilizar os recursos do MyFaces FRANCISCO CALAÇA XAVIER Uma das implementações do JavaServer Faces mais utilizada atualmente é o MyFaces, um projeto da Apache

Leia mais

Manual de Integração Via Gadget. Passo a passo para realizar a integração entre websites e a plataforma Virtual Target.

Manual de Integração Via Gadget. Passo a passo para realizar a integração entre websites e a plataforma Virtual Target. Manual de Integração Via Gadget Passo a passo para realizar a integração entre websites e a plataforma Virtual Target. Manual de Integração Via Gadget 1. Introdução 1.1. O que é? Virtual Target Gadgets

Leia mais

As Novidades do JSF 2.0

As Novidades do JSF 2.0 artigo As Novidades do JSF 2.0 Conheça a nova versão do JSF que traz inúmeras vantagens em relação ao seu antecessor. O JSF é hoje a principal ferramenta no mundoj para desenvolvimento Web, principalmente

Leia mais

Desenvolvimento de Aplicações para Internet

Desenvolvimento de Aplicações para Internet Desenvolvimento de Aplicações para Internet Aula 03 Celso Olivete Júnior olivete@fct.unesp.br Na aula de hoje... Javascript: introdução, operadores lógicos e matemáticos, comandos condicionais. Javascript:

Leia mais

AJAX no GASweb. Mas e afinal, para que usamos o AJAX?

AJAX no GASweb. Mas e afinal, para que usamos o AJAX? Nível - Avançado AJAX no GASweb Por: Pablo Hadler AJAX (Asynchronous Javascript and XML) foi criado com o princípio de ser uma maneira rápida e otimizada de podermos fazer requisições Web, sendo esta totalmente

Leia mais

Casa do Código Livros para o programador Rua Vergueiro, 3185-8º andar 04101-300 Vila Mariana São Paulo SP Brasil

Casa do Código Livros para o programador Rua Vergueiro, 3185-8º andar 04101-300 Vila Mariana São Paulo SP Brasil 2012, Casa do Código Todos os direitos reservados e protegidos pela Lei nº9.610, de 10/02/1998. Nenhuma parte deste livro poderá ser reproduzida, nem transmitida, sem autorização prévia por escrito da

Leia mais

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando

Leia mais

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique. Lista de Revisão 1. Nos sistemas web, geralmente os usuários apresentam dois problemas típicos, a desorientação e a sobrecarga cognitiva. Discorra sobre esses problemas. 2. Apresente as principais diferenças

Leia mais

MÓDULO Programação para Web 2

MÓDULO Programação para Web 2 MÓDULO Programação para Web 2 Introdução ao JSF Java Server Faces Introdução Framework para desenvolvimento de aplicações web em Java Fortemente baseado nos padrões MVC e Front Controller MVC (model-view-controller):

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 6 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM MARÇO / 2015 2 de 6 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

mhtml:file://d:\utfpr\2009-2\especialização Java\Materiais de Aula\02 - JSF\Estud...

mhtml:file://d:\utfpr\2009-2\especialização Java\Materiais de Aula\02 - JSF\Estud... Página 1 de 7 Precisa de um freelancer, códigosfonte e exemplos Dicas & Truques completos? Contrate Nossa Consultoria Downloads Quem Somos Artigos & Tutoriais Bem-vindo(a) ao meu site. Além de realizar

Leia mais

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Software cliente: browser e outros Protocolo HTTP Infraestrutura de transporte

Leia mais

JavaScript (Funções, Eventos e Manipulação de Formulários)

JavaScript (Funções, Eventos e Manipulação de Formulários) Linguagem de Programação para Web JavaScript (Funções, Eventos e Manipulação de Formulários) Prof. Mauro Lopes 1-31 23 Objetivos Iremos avançar um pouco mais em nosso estudo sobre o JavaScript. Iremos

Leia mais

Introdução ao Javascript

Introdução ao Javascript Programação WEB I Introdução ao Javascript Apresentação da Disciplina,Introdução a linguagem Javascript Objetivos da Disciplina Apresentar os principais conceitos da linguagem Javascript referente à programação

Leia mais

Boas Práticas de Desenvolvimento Seguro

Boas Práticas de Desenvolvimento Seguro Boas Práticas de Desenvolvimento Seguro Julho / 2.012 Histórico de Revisões Data Versão Descrição Autor 29/07/2012 1.0 Versão inicial Ricardo Kiyoshi Página 2 de 11 Conteúdo 1. SEGURANÇA DA INFORMAÇÃO

Leia mais

Java EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o

Java EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o a r t i g o Pedro Henrique S. Mariano (pedro.mariano@caelum.com.br) técnologo em Análise e Desenvolvimento de Sofware pela FIAP, possui as certificações SCJP 6 e SCRUM master.trabalha como consultor e

Leia mais

Scriptlets e Formulários

Scriptlets e Formulários 2 Scriptlets e Formulários Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Permitir ao aluno aprender a criar um novo projeto Java para web no Netbeans IDE,

Leia mais

JSF - Controle de Acesso FERNANDO FREITAS COSTA

JSF - Controle de Acesso FERNANDO FREITAS COSTA JSF - Controle de Acesso FERNANDO FREITAS COSTA ESPECIALISTA EM GESTÃO E DOCÊNCIA UNIVERSITÁRIA JSF Controle de Acesso Antes de iniciarmos este assunto, é importante conhecermos a definição de autenticação

Leia mais

Introdução. Templates. Configurações. Componentes. Prof. Enzo Seraphim

Introdução. <facelets> Templates. Configurações. Componentes. Prof. Enzo Seraphim Introdução Templates Configurações Componentes Prof. Enzo Seraphim Definição Linguagem de descrição de páginas (PDL Page Description Language) criada para JSF. Estabelece templates que suportam

Leia mais

Grupo de Usuários Java http://www.guj.com.br JavaServer Faces: A mais nova tecnologia Java para desenvolvimento WEB

Grupo de Usuários Java http://www.guj.com.br JavaServer Faces: A mais nova tecnologia Java para desenvolvimento WEB JavaServer Faces: A mais nova tecnologia Java para desenvolvimento WEB Talita Pitanga Conheça um pouco sobre a mais nova tecnologia para desenvolvimento de aplicações WEB: JavaServer Faces. Introdução

Leia mais

Tecnologias para apresentação de dados - Java Script. Aécio Costa

Tecnologias para apresentação de dados - Java Script. Aécio Costa Tecnologias para apresentação de dados - Java Script Aécio Costa Foi originalmente implementada como parte dos navegadores web para que scripts pudessem ser executados do lado do cliente e interagissem

Leia mais

JavaScript: Validação de Formulários. Prof. Ivanilton Polato ipolato@utfpr.edu.br ipolato@gmail.com

JavaScript: Validação de Formulários. Prof. Ivanilton Polato ipolato@utfpr.edu.br ipolato@gmail.com JavaScript: Validação de Formulários Prof. Ivanilton Polato ipolato@utfpr.edu.br ipolato@gmail.com Validação de Formulários Um dos usos mais frequentes do JS é a validação de formulários. Além de garantir

Leia mais

Potenciais de Aplicação da Metodologia AJAX

Potenciais de Aplicação da Metodologia AJAX SEGeT Simpósio de Excelência em Gestão e Tecnologia 1 Potenciais de Aplicação da Metodologia AJAX Bruno Simões Kleverson Pereira Marcos Santos Eduardo Barrere Associação Educacional Dom Bosco - AEDB RESUMO

Leia mais

Programando em PHP. Conceitos Básicos

Programando em PHP. Conceitos Básicos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web

Leia mais

Introdução à Tecnologia Web

Introdução à Tecnologia Web Introdução à Tecnologia Web JavaScript Sintaxe da Linguagem: Delimitadores e etc Profª MSc. Elizabete Munzlinger JavaScript Sintaxe da Linguagem Índice 1 SINTAXE DA LINGUAGEM... 2 1.1 Delimitadores de

Leia mais

Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007

Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007 Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007 Nível: Intermediário Este tutorial tem como objetivo criar um simples componente que renderiza uma tag label utilizando recursos

Leia mais

Artigo JavaMagazine (edição 58)

Artigo JavaMagazine (edição 58) 1 / JBoss Seam Simplicidade e produtividade no desenvolvimento de aplicações Web Aprenda a desenvolver aplicações Web utilizando a integração perfeita entre JSF e EJB 3 FÁBIO AUGUSTO FALAVINHA O JBoss

Leia mais

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

Programação Web Aula 5 - Javascript Parte 2 - Javascript e HTML

Programação Web Aula 5 - Javascript Parte 2 - Javascript e HTML Programação Web Aula 5 - Javascript Parte 2 - Javascript e HTML Departamento de Informática UFPR 17 de Março de 2014 1 Javascript e HTML 2 Ambiente Hierarquia Propriedades de Document 3 DOM Denição Hierarquia

Leia mais

Desenvolvimento de aplicações Web. Java Server Pages

Desenvolvimento de aplicações Web. Java Server Pages Desenvolvimento de aplicações Web Java Server Pages Hamilton Lima - athanazio@pobox.com 2003 Como funciona? Servidor web 2 Internet 1 Browser 3 Arquivo jsp 4 JSP Compilado 2 Passo a passo 1 browser envia

Leia mais

O que é Ajax? Asynchronous JavaScript and XML (JavaScript Assíncrono e XML)

O que é Ajax? Asynchronous JavaScript and XML (JavaScript Assíncrono e XML) Ajax O que é Ajax? Asynchronous JavaScript and XML (JavaScript Assíncrono e XML) É uma técnica para criar páginas web fáceis e dinâmicas; Permite que páginas web sejam atualizadas de forma assíncrona através

Leia mais

Desenvolvimento de Sistemas Web Prof. Leandro Roberto. Aula 18 JavaScript: Eventos MySQL PHP (insert, update e delete)

Desenvolvimento de Sistemas Web Prof. Leandro Roberto. Aula 18 JavaScript: Eventos MySQL PHP (insert, update e delete) Desenvolvimento de Sistemas Web Prof. Leandro Roberto Aula 18 JavaScript: Eventos MySQL PHP (insert, update e delete) JavaScript Eventos Alguns eventos de uma página HTML podem ser interceptados e programados

Leia mais

Componentes no Java EE

Componentes no Java EE Unidade III Componentes no Plataforma Java Enterprise Edition Adiciona ao Java suporte para: Desenvolvimento de Aplicações Web: JSP, Servlets e Componentes de Negócio: Interconexão com Sistemas Legados:

Leia mais

Manual de Integração WebService

Manual de Integração WebService Manual de Integração WebService Sumário 1. O que é a Integração WebService? 2. Envio Simples 3. Consultar Status da Mensagem 3.1 Consultar Mensagens Recebidas 4. Tecnologia do WebService Facilita 1. O

Leia mais

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013 A DIRETORIA DE INFORMÁTICA DINFO DA UNIVERSIDADE DO ESTADO DO RIO DE JANEIRO -UERJ, no uso de suas atribuições legais, estabelece: Art. 1º: Para fins de normatização do Desenvolvimento Tecnológico na UERJ

Leia mais

Ajax Asynchronous JavaScript and Xml

Ajax Asynchronous JavaScript and Xml Ajax Asynchronous JavaScript and Xml Ajax permite construir aplicações Web mais interativas, responsivas, e fáceis de usar que aplicações Web tradicionais. Numa aplicação Web tradicional quando se prime

Leia mais

JSF. Versão 1.0. Apostila destinada ao curso com carga horária de 32 (trinta e duas) horas

JSF. Versão 1.0. Apostila destinada ao curso com carga horária de 32 (trinta e duas) horas JSF JavaServer Faces, é um Framework Web no padrão MVC como o objetivo de simplificar a construção de interfaces com o usuário para aplicações Java Web e fazer componente UI reutilizável fácil de implementar.

Leia mais

Padrões de Projeto em Aplicações Web Desenvolvendo projetos web consistentes baseados em reuso de soluções

Padrões de Projeto em Aplicações Web Desenvolvendo projetos web consistentes baseados em reuso de soluções 1/ Padrões de Projeto em Aplicações Web Desenvolvendo projetos web consistentes baseados em reuso de soluções Adote as melhores práticas de reuso de soluções com a abordagem de Padrões de Projeto (Design

Leia mais

Criando documentação com javadoc

Criando documentação com javadoc H Criando documentação com javadoc H.1 Introdução Neste apêndice, fornecemos uma introdução a javadoc ferramenta utilizada para criar arquivos HTML que documentam o código Java. Essa ferramenta é usada

Leia mais

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON) Márcio Koch 1 Currículo Formado na FURB em Ciência da Computação Pós graduado em Tecnologias para o desenvolvimento de aplicações web Mestrando em Computação Gráfica na UDESC Arquiteto de software na Senior

Leia mais

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges Versão 1.0 TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges Data: 01/12/2014 SUMÁRIO 1. INTRODUÇÃO... 2 2. O QUE É SPRING SECURITY?...

Leia mais

AJAX em Java com o Google Web Toolkit

AJAX em Java com o Google Web Toolkit AJAX em Java com o Google Web Toolkit Maurício Linhares de Aragão Junior AJAX rápido, fácil e puro Java com o Google Web Toolkit Introdução O desenvolvimento de aplicações que utilizam o conjunto de tecnologias

Leia mais

Conteúdo. www.integrator.com.br

Conteúdo. www.integrator.com.br Conteúdo FACELETS E LAYOUT CSS... 2 O ECLIPSE IDE... 2 OBTENDO E INSTALANDO O ECLIPSE IDE... 2 O PLUG-IN JBOSS TOOLS... 3 INICIANDO NA PLATAFORMA ECLIPSE... 3 BAIXANDO O JAVASERVER FACES... 4 AS BIBLIOTECAS

Leia mais

WEBDESIGN. Professor: Paulo Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira

WEBDESIGN. Professor: Paulo Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira WEBDESIGN Professor: Paulo Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira 1 CDI - Curso de Webdesign - Prof. Paulo Trentin Objetivos para esta aula Debater sobre

Leia mais

Desenvolvimento de Aplicações para Internet Aula 11

Desenvolvimento de Aplicações para Internet Aula 11 Desenvolvimento de Aplicações para Internet Aula 11 Celso Olivete Júnior olivete@fct.unesp.br www.fct.unesp.br/docentes/dmec/olivete jquery Na aula passada: Selecionando atributos Manipulando CSS Inserindo

Leia mais

Java Server Faces 2.0 Breve introdução prá0ca

Java Server Faces 2.0 Breve introdução prá0ca 16/02/2012 Java Server Faces 2.0 Breve introdução prá0ca Helder da Rocha helder@argonavis.com.br Obje0vos deste tutorial Introdução ao JSF 2 O que é, quando usar, como usar, para que serve, benegcios,

Leia mais

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem. 1 - O que é JAVASCRIPT? É uma linguagem de script orientada a objetos, usada para aumentar a interatividade de páginas Web. O JavaScript foi introduzido pela Netscape em seu navegador 2.0 e posteriormente

Leia mais

BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL

BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL Deinf/Dine4 Versão 1.3 20/05/2013 Histórico de Revisão Data Versão Descrição Autor 06/11/2007 1.0 Elaboração da primeira versão

Leia mais

jquery André Tavares da Silva andre.silva@udesc.br

jquery André Tavares da Silva andre.silva@udesc.br jquery André Tavares da Silva andre.silva@udesc.br jquery jquery é uma biblioteca em JavaScript; Seu objetivo é simplificar a programação em JavaScript; jquery foi desenvolvida para ser de aprendizado

Leia mais

DWR DIRECTED WEB REMOTING

DWR DIRECTED WEB REMOTING DWR DIRECTED WEB REMOTING Vamos ver nesse artigo um pouco sobre o Frameworks Ajax para Java, o DWR. Vamos ver seus conceitos, utilidades, vantagens, algumas práticas e fazer o passo a passo para baixar,

Leia mais

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. JavaScript

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. JavaScript Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Universidade Federal do Espírito Santo CCA UFES JavaScript Desenvolvimento de Sistemas para WEB Site:

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

JavaServer Faces JSF

JavaServer Faces JSF JavaServer Faces JSF Fernando Freitas Costa Bacharel em Sistemas de Informação Especialista em Gestão e Docência Universitária blog.fimes.edu.br/fernando nando@fimes.edu.br JavaServer Faces e Banco de

Leia mais

JSF. Componentes. Face Bean. Navegação. JavaServer Faces. Validação. Ciclo JSF. Prof. Enzo Seraphim. Exemplo

JSF. Componentes. Face Bean. Navegação. JavaServer Faces. Validação. Ciclo JSF. Prof. Enzo Seraphim. Exemplo JSF Componentes Face Bean Navegação Validação Ciclo JSF Exemplo JavaServer Faces Prof. Enzo Seraphim JSF (JavaServer Faces) É uma especificação Java e não um produto proprietário Especificado pelo JCP

Leia mais

Lidando de Forma Eficiente com Validações Locais de Objetos

Lidando de Forma Eficiente com Validações Locais de Objetos Lidando de Forma Eficiente com Validações Locais de Objetos Aprenda a construir um mini-framework para validar objetos locais sem afetar a complexidade do código. Autor Paulo César M. N. A. Coutinho (pcmnac@gmail.com):

Leia mais

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. Ajax

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. Ajax Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Universidade Federal do Espírito Santo CCA UFES Ajax Desenvolvimento de Sistemas para WEB Site: http://jeiks.net

Leia mais

JSP (Java Server Pages)

JSP (Java Server Pages) JSP (Java Server Pages) Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior 1 Introdução Tecnologia para desenvolvimento de aplicações WEB fundamentada na

Leia mais

Validando dados de páginas WEB

Validando dados de páginas WEB Validando dados de páginas WEB Para que validar os dados? Validar os dados informados pelo usuário garante que sua aplicação funcione corretamente e as informações contidas nela tenha algum sentido. Outro

Leia mais

PROGRAMAÇÃO PARA INTERNET. Fonte: Raul Paradeda

PROGRAMAÇÃO PARA INTERNET. Fonte: Raul Paradeda PROGRAMAÇÃO PARA INTERNET Introdução à AJAX Fonte: Raul Paradeda INTRODUÇÃO Para entender o que é o AJAX é necessário ter o prévio conhecimento de: HTML / XHTML; Javascript; CSS; XML. INTRODUÇÃO Ao pesquisar

Leia mais

ARQUITETURA SISGRAD. Manual de Utilização. Versão: 2.0. Criação: 05 de julho de 2007 Autor: André Penteado

ARQUITETURA SISGRAD. Manual de Utilização. Versão: 2.0. Criação: 05 de julho de 2007 Autor: André Penteado ARQUITETURA SISGRAD Manual de Utilização Versão: 2.0 Criação: 05 de julho de 2007 Autor: André Penteado Última Revisão: 09 de outubro de 2009 Autor: Alessandro Moraes Controle Acadêmico - Arquitetura SISGRAD

Leia mais

Escrito por Neri Neitzke Qua, 25 de Junho de 2014 14:51 - Última atualização Qua, 25 de Junho de 2014 14:54

Escrito por Neri Neitzke Qua, 25 de Junho de 2014 14:51 - Última atualização Qua, 25 de Junho de 2014 14:54 Java para Web 4, aprenda criar um sistema para web usando MVC (Model View Controller), DAO, JSTL, Custom Tags, HTML5, JavaScript, CSS3, Eclipse, Netbeans, postgresql powerdesigner. São 159 videoaulas em

Leia mais

Buscando a praticidade na integração do seu sistema com o nosso, a Papo consultou desenvolvedores, pesquisou concorrentes e avaliou tecnologias, para

Buscando a praticidade na integração do seu sistema com o nosso, a Papo consultou desenvolvedores, pesquisou concorrentes e avaliou tecnologias, para v1.0 Buscando a praticidade na integração do seu sistema com o nosso, a Papo consultou desenvolvedores, pesquisou concorrentes e avaliou tecnologias, para criar um web service de integração rápido e simples.

Leia mais

Java na WEB Componentes Bean

Java na WEB Componentes Bean 1 Java na WEB Componentes Bean Objetivo: Ao final da aula o aluno será capaz de: Criar site dinâmico utilizando componentes Bean Utilizar Tags de ação Empregar Coleções de Bean. Sumário 5. Definição de

Leia mais

Testes de Software. Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB. Anne Caroline O. Rocha Tester Certified BSTQB NTI UFPB

Testes de Software. Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB. Anne Caroline O. Rocha Tester Certified BSTQB NTI UFPB Testes de Software 1 AULA 04 FERRAMENTAS DE AUTOMAÇÃO DE TESTES FUNCIONAIS Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB Conteúdo Programático Aula 04 Automação de testes funcionais Ferramentas

Leia mais

JSF Facelets. Como Facelets muda a forma de desenvolver com JSF

JSF Facelets. Como Facelets muda a forma de desenvolver com JSF JSF Facelets Como Facelets muda a forma de desenvolver com JSF Agenda JSF 1.x JSF e JSP Facelets JSF 2.0 JSF Framework MVC Eventos (Observadores) Manter o estado da View Uma árvore de componete JSF JSF

Leia mais

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES 5º PERÍODO Gestão da Tecnologia da Informação Alunos: Alessandro Aparecido André Alexandre Bruno Santiago Thiago Castilho

Leia mais

Java para WEB JSTL. JavaServer Pages Standard Tag Library

Java para WEB JSTL. JavaServer Pages Standard Tag Library JSTL JSTL JavaServer Pages Standard Tag Library API que encapsulou em tags simples toda a funcionalidade que diversas páginas Web precisam, como controle de laços (fors), controle de fluxo do tipo if else,

Leia mais

Unidade 9: Middleware JDBC para Criação de Beans

Unidade 9: Middleware JDBC para Criação de Beans Programação Servidor para Sistemas Web 1 Unidade 9: Middleware JDBC para Criação de Beans Implementando MVC Nível 1 Prof. Daniel Caetano Objetivo: Preparar o aluno para construir classes de entidade com

Leia mais

JSP (Java Server Pages)

JSP (Java Server Pages) JSP (Java Server Pages) André Tavares da Silva andre.silva@udesc.br JSP A linguagem surgiu por volta de 1995. JSP foi inicialmente inventado por Anselm Baird-Smith durante um final de semana e depois Satish

Leia mais

e commerces DOCUMENTO DE INTEGRAÇÃO Sumário Dúvidas: 55 51 3023.2332 suporte@hookit.cc www.hookit.cc Atualizado em: 10/09/2014

e commerces DOCUMENTO DE INTEGRAÇÃO Sumário Dúvidas: 55 51 3023.2332 suporte@hookit.cc www.hookit.cc Atualizado em: 10/09/2014 DOCUMENTO DE INTEGRAÇÃO e commerces Atualizado em: 10/09/2014 Sumário 1. Cadastro e atualização de produtos 2. Exibição do botão Hookar 3. Conversão de acesso em venda 4. Status das vendas 1. Cadastro

Leia mais

Frameworks - Grails. Aécio Costa

Frameworks - Grails. Aécio Costa Aécio Costa Abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade

Leia mais

AJAX é baseado nos seguintes padrões WEB: JavaScript, XML, HTML, CSS.

AJAX é baseado nos seguintes padrões WEB: JavaScript, XML, HTML, CSS. AJAX AJAX é acrônimo de Asynchronous JavaScript And XML. É um tipo de programação que se tornou popular in 2005 pela Google (com Google Suggest). AJAX não é uma nova linguagem de programação, mas uma nova

Leia mais

PROJETO INTEGRADOR. Documentação. Aplicação de Controle de Acesso FACULDADE DE TECNOLOGIA SENAC GOIÁS. Programação com Frameworks

PROJETO INTEGRADOR. Documentação. Aplicação de Controle de Acesso FACULDADE DE TECNOLOGIA SENAC GOIÁS. Programação com Frameworks PROJETO INTEGRADOR FACULDADE DE TECNOLOGIA SENAC GOIÁS Programação com Frameworks Documentação Aplicação de Controle de Acesso Gestão em Tecnologia da Informação 5º Módulo Noturno Professor: Fabricio Leonard

Leia mais

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) Sessão Prática II JPA entities e unidades de persistência 1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) a) Criar um Web Application (JPAsecond) como anteriormente:

Leia mais

Capítulo 1 - Java EE 6 por alto - 1

Capítulo 1 - Java EE 6 por alto - 1 Capítulo 1 - Java EE 6 por alto - 1 Um pouquinho de história - 2 Padrões - 4 Arquitetura - 4 Componentes - 5 Contentores - 6 Serviços - 7 Protocolos de rede - 9 Empacotamento - 9 Java Standard Edition

Leia mais

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5 JavaScript Diego R. Frank, Leonardo Seibt FIT Faculdades de Informática de Taquara Fundação Educacional Encosta Inferior do Nordeste Av. Oscar Martins Rangel, 4500 Taquara RS Brasil difrank@terra.com.br,

Leia mais

JavaServer Pages (JSP) Leonardo Gresta Paulino Murta leomurta@ic.uff.br

JavaServer Pages (JSP) Leonardo Gresta Paulino Murta leomurta@ic.uff.br JavaServer Pages (JSP) Leonardo Gresta Paulino Murta leomurta@ic.uff.br Especificação/IDE/Implementação Esse curso foi preparado em 03/2015 usando a seguinte especificação, IDE e implementação Especificação

Leia mais

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

Leia mais

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.).

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.). HTML / JAVASCRIPT Estamos iniciando o estudo do HTML através das TAGS (comandos) para construir formulários. Isso facilitará a continuidade dos nossos estudos da linguagem de programação JavaScript, a

Leia mais

Apache Wicket. Apache Wicket

Apache Wicket. Apache Wicket wicket_ Apache Wicket Apache Wicket Um framework simplificado para construir páginas Web dinâmicas Qual desenvolvedor não gostaria de utilizar orientação a objetos na Web? Utilizar componentes reutilizáveis

Leia mais

Programação Web com PHP. Prof. Wylliams Barbosa Santos wylliamss@gmail.com Optativa IV Projetos de Sistemas Web

Programação Web com PHP. Prof. Wylliams Barbosa Santos wylliamss@gmail.com Optativa IV Projetos de Sistemas Web Programação Web com PHP Prof. Wylliams Barbosa Santos wylliamss@gmail.com Optativa IV Projetos de Sistemas Web Agenda O que é PHP? O que da pra fazer com PHP? Como a web funciona? Onde, quando e por que

Leia mais

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões Prof. MSc. Hugo Souza Se você precisar manter informações sobre seus usuários enquanto eles navegam pelo seu site, ou até quando eles saem

Leia mais

Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]] )

Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]] ) Disciplina: Tópicos Especiais em TI PHP Este material foi produzido com base nos livros e documentos citados abaixo, que possuem direitos autorais sobre o conteúdo. Favor adquiri-los para dar continuidade

Leia mais

Criando uma agenda simples com NetBeans 6.5

Criando uma agenda simples com NetBeans 6.5 Criando uma agenda simples com NetBeans 6.5 (Swing application framework e Beansbinding) Já faz algum tempo que escrevi uma agenda simples usando o Eclipse com o Visual Class Editor. Demorei em torno de

Leia mais

5 Detalhes da Implementação

5 Detalhes da Implementação Detalhes da Implementação 101 5 Detalhes da Implementação Neste capítulo descreveremos detalhes da implementação do Explorator que foi desenvolvido usando o paradigma MVC 45 e o paradigma de CoC 46 (Convention

Leia mais

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Criando uma Calculadora Primeiramente deve se criar uma estrutura para armazenar os arquivos necessários para o funcionamento da calculadora.

Leia mais