SlideShare a Scribd company logo
1 of 25
Download to read offline
Treinamento AJAX

Waelson Negreiros
Email: waelson@gmail.com
Blog: http://waelson.com.br
Agenda
O

que DWR?
 Primeiros Passos
 Modo Debug
 Biblioteca Utils.js
 JSON
 Exercício
O que é DWR?
 Framework

Open Source;
 Blibliotecas Java e JavaScript;
 Oculta a complexidade;
 Acessa métodos em classes Java;
 Java Script mais fácil.
O que é DWR?
O que é DWR?
 Está


Parte Server-Side





dividido em duas partes:

Servlet Java rodando no servidor;
Processa as requisições e retorna ao DWR;

Parte Client-Side


DWR encapsula o XMLHttpRequest
O que é DWR?
 Falicidade





de uso

DWR cria os JavaScript para acesso ao Java;
Código personalizado para cada classe Java;
Conversão automática de parâmetros;
Comunicação assíncrona via XMLHttpRequest.
Primeiros Passos
 Baixe

a biblioteca do site
www.directwebremoting.org
 Crie um projeto Java Web e coloque todas as
blibliotecas na pasta WEB-INF/lib
 Mapei o servlet do DWR no web.xml;
 Crie o arquivo dwr.xml no diretório WEB-INF
 Crie sua classe Java e registre no dwr.xml
 Crie sua página, adicione os scripts gerado
pelo DWR e invoque os métodos Java.
Primeiros Passos
 WEB.XML
Primeiros Passos
 DWR.XML


Define as classes e métodos que serão
disponibilizados para acesso do lado cliente.
Primeiros Passos
 Classes

Java
Primeiros Passos
 DWR.XML
Primeiros Passos
 Chamadas

dos script gerados pelo DWR
Primeiros Passos
 JavaScript
Primeiros Passos
 Teste

sua aplicação através da URL abaixo

http://localhost:8080/<my_app>
EXEMPLO
Primeiros Passos
Modo Debug
 Permite

você testar as chamadas aos
métodos Java;
 URL http://localhost:8080/<my_app>/dwr
 Modo deve está habilitado no web.xml
Modo Debug
Modo Debug
Biblioteca Utils.js
 Facilita

o desenvolvimento JavaScript;
 Métodos auxiliares para manipulação de:



Tabelas
Listas
Biblioteca Utils.js
 Principais







Funções:

$(id) – Retorna um objeto
getValue(id) - Retorna o valor de um objeto
getText(id) – Retorna o texto de listas (option)
setValue(id, valor) – Configura um valor em um
objeto
setValues([notação Json]) – Configura o valor
em mais de um objeto
Biblioteca Utils.js
 Principais








Funções

addOptions(id, array) – Adiciona vários options
a um select
addRows(id, array, cellfuncs, [options]) –
Preenche uma tabela;
removeAllOptions(id) – remove todos os options
ou ul de um objeto;
removeAllRows(id) – remove todas as linhas de
uma tabela
JSON
 Acrônimo

de JavaScript Object Notation;
 Usado para troca de dados;
 Alternativa aos XMLs;
 Construído sobre 2 estruturas



Coleção de pares nome:valor;
Lista de valores ordenado
JSON
JSON
 Exemplo:

var pessoa = {
nome: ”Waelson Negreiros”,
cpf: “92007279304”
};
Exercício
 Com

base no que foi ensinado construa uma
simples aplicação que ao clicar em um
botão, retorne a data e hora dos servidor e a
exibe em um textarea.

More Related Content

What's hot

ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryMarketing Digital ODIG
 
ADB: Um ator invisível
ADB: Um ator invisívelADB: Um ator invisível
ADB: Um ator invisívelFelipe Pedroso
 
JavaScript e JQuery para Webdesigners
JavaScript e JQuery para WebdesignersJavaScript e JQuery para Webdesigners
JavaScript e JQuery para WebdesignersHarlley Oliveira
 
Conexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao AjaxConexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao AjaxHelder da Rocha
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Eduardo Mendes
 
tmn - Introdução ao JavaScript
tmn - Introdução ao JavaScripttmn - Introdução ao JavaScript
tmn - Introdução ao JavaScriptClaudio Gamboa
 
JavaScript Model-View no Frontend
JavaScript Model-View no FrontendJavaScript Model-View no Frontend
JavaScript Model-View no FrontendHenrique Gogó
 
Tutorial visão automação de testes e casper js
Tutorial visão automação de testes e casper jsTutorial visão automação de testes e casper js
Tutorial visão automação de testes e casper js4ALL Tests
 
Tutorial - Visão sobre Automação de Testes com CasperJS
Tutorial - Visão sobre Automação de Testes com CasperJSTutorial - Visão sobre Automação de Testes com CasperJS
Tutorial - Visão sobre Automação de Testes com CasperJSFrederico Allan
 
Javascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - ConceitosJavascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - ConceitosWesley Lemos
 
Backbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectadosBackbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectadosHenrique Gogó
 
Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsEduardo Mendes
 

What's hot (20)

ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQuery
 
ADB: Um ator invisível
ADB: Um ator invisívelADB: Um ator invisível
ADB: Um ator invisível
 
JavaScript e JQuery para Webdesigners
JavaScript e JQuery para WebdesignersJavaScript e JQuery para Webdesigners
JavaScript e JQuery para Webdesigners
 
Java wsdp
Java wsdpJava wsdp
Java wsdp
 
JavaScript Hacks
JavaScript HacksJavaScript Hacks
JavaScript Hacks
 
jQuery Simplificando o JavaScript
jQuery Simplificando o JavaScriptjQuery Simplificando o JavaScript
jQuery Simplificando o JavaScript
 
Conexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao AjaxConexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao Ajax
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1
 
Tag Libraries e JSTL
Tag Libraries e JSTLTag Libraries e JSTL
Tag Libraries e JSTL
 
tmn - Introdução ao JavaScript
tmn - Introdução ao JavaScripttmn - Introdução ao JavaScript
tmn - Introdução ao JavaScript
 
Desenvolvimento
DesenvolvimentoDesenvolvimento
Desenvolvimento
 
JavaScript Model-View no Frontend
JavaScript Model-View no FrontendJavaScript Model-View no Frontend
JavaScript Model-View no Frontend
 
Fundamentos de JDBC
Fundamentos de JDBCFundamentos de JDBC
Fundamentos de JDBC
 
Realtime com node.js e socket.io
Realtime com node.js e socket.ioRealtime com node.js e socket.io
Realtime com node.js e socket.io
 
Tutorial visão automação de testes e casper js
Tutorial visão automação de testes e casper jsTutorial visão automação de testes e casper js
Tutorial visão automação de testes e casper js
 
Tutorial - Visão sobre Automação de Testes com CasperJS
Tutorial - Visão sobre Automação de Testes com CasperJSTutorial - Visão sobre Automação de Testes com CasperJS
Tutorial - Visão sobre Automação de Testes com CasperJS
 
Javascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - ConceitosJavascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - Conceitos
 
Backbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectadosBackbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectados
 
Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e Servlets
 
Introdução Ruby 1.8.7 + Rails 3
Introdução Ruby 1.8.7 + Rails 3Introdução Ruby 1.8.7 + Rails 3
Introdução Ruby 1.8.7 + Rails 3
 

Viewers also liked (6)

EJB 3.1
EJB 3.1EJB 3.1
EJB 3.1
 
Curso flex sicoob - aula 11
Curso flex   sicoob - aula 11Curso flex   sicoob - aula 11
Curso flex sicoob - aula 11
 
Treinamento ajax 05
Treinamento ajax   05Treinamento ajax   05
Treinamento ajax 05
 
Treinamento ajax ria - 01
Treinamento ajax   ria - 01Treinamento ajax   ria - 01
Treinamento ajax ria - 01
 
Treinamento ajax 04
Treinamento ajax   04Treinamento ajax   04
Treinamento ajax 04
 
Treinamento ajax 02
Treinamento ajax   02Treinamento ajax   02
Treinamento ajax 02
 

Similar to Treinamento ajax 03 (20)

Oficial
OficialOficial
Oficial
 
Servlets e jsp
Servlets e jspServlets e jsp
Servlets e jsp
 
Servlets
ServletsServlets
Servlets
 
servlet-introducao
servlet-introducaoservlet-introducao
servlet-introducao
 
Minicurso Java
Minicurso JavaMinicurso Java
Minicurso Java
 
Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007
 
Cactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta CactusCactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta Cactus
 
Servlets E Applet
Servlets E AppletServlets E Applet
Servlets E Applet
 
Java 02 Iniciando Uso Java
Java 02 Iniciando Uso JavaJava 02 Iniciando Uso Java
Java 02 Iniciando Uso Java
 
JADE+JENA
JADE+JENAJADE+JENA
JADE+JENA
 
Desenvolvimento Agil Com Doctrine Orm
Desenvolvimento Agil Com Doctrine OrmDesenvolvimento Agil Com Doctrine Orm
Desenvolvimento Agil Com Doctrine Orm
 
Java script1
Java script1Java script1
Java script1
 
Aplicações web parte 2
Aplicações web parte 2Aplicações web parte 2
Aplicações web parte 2
 
Conhecendo Ror
Conhecendo RorConhecendo Ror
Conhecendo Ror
 
Linguagem de Programação Java para Iniciantes
Linguagem de Programação Java para IniciantesLinguagem de Programação Java para Iniciantes
Linguagem de Programação Java para Iniciantes
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Produtividade em Java com Grails
Produtividade em Java com GrailsProdutividade em Java com Grails
Produtividade em Java com Grails
 
LambdaDay: Backbone.js
LambdaDay: Backbone.jsLambdaDay: Backbone.js
LambdaDay: Backbone.js
 
Gestão automática de configuração usando puppet
Gestão automática de configuração usando puppetGestão automática de configuração usando puppet
Gestão automática de configuração usando puppet
 
Ruby on Rails I - Modelos
Ruby on Rails I - ModelosRuby on Rails I - Modelos
Ruby on Rails I - Modelos
 

More from Waelson Negreiros Nunes

HornetQ - 13.Alta Disponibilidade e Failover
HornetQ - 13.Alta Disponibilidade e FailoverHornetQ - 13.Alta Disponibilidade e Failover
HornetQ - 13.Alta Disponibilidade e FailoverWaelson Negreiros Nunes
 
HornetQ - 10.Reentrega de Mensagens e DLQ
HornetQ - 10.Reentrega de Mensagens e DLQHornetQ - 10.Reentrega de Mensagens e DLQ
HornetQ - 10.Reentrega de Mensagens e DLQWaelson Negreiros Nunes
 
HornetQ - 2.1.HornetQ no Modo Standalone
HornetQ - 2.1.HornetQ no Modo StandaloneHornetQ - 2.1.HornetQ no Modo Standalone
HornetQ - 2.1.HornetQ no Modo StandaloneWaelson Negreiros Nunes
 
HornetQ - 16.Divert e Splitting de Mensagem
HornetQ - 16.Divert e Splitting de MensagemHornetQ - 16.Divert e Splitting de Mensagem
HornetQ - 16.Divert e Splitting de MensagemWaelson Negreiros Nunes
 
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeitaPalestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeitaWaelson Negreiros Nunes
 

More from Waelson Negreiros Nunes (18)

Treinamento ajax modulo javascript
Treinamento ajax   modulo javascriptTreinamento ajax   modulo javascript
Treinamento ajax modulo javascript
 
Desvendando o mundo iOS
Desvendando o mundo iOSDesvendando o mundo iOS
Desvendando o mundo iOS
 
HornetQ - 15.Bridge
HornetQ - 15.BridgeHornetQ - 15.Bridge
HornetQ - 15.Bridge
 
HornetQ - 14.Cluster
HornetQ - 14.ClusterHornetQ - 14.Cluster
HornetQ - 14.Cluster
 
HornetQ - 13.Alta Disponibilidade e Failover
HornetQ - 13.Alta Disponibilidade e FailoverHornetQ - 13.Alta Disponibilidade e Failover
HornetQ - 13.Alta Disponibilidade e Failover
 
HornetQ - 12.Paginação
HornetQ - 12.PaginaçãoHornetQ - 12.Paginação
HornetQ - 12.Paginação
 
HornetQ - 11.Mensagens Expiradas
HornetQ - 11.Mensagens ExpiradasHornetQ - 11.Mensagens Expiradas
HornetQ - 11.Mensagens Expiradas
 
HornetQ - 10.Reentrega de Mensagens e DLQ
HornetQ - 10.Reentrega de Mensagens e DLQHornetQ - 10.Reentrega de Mensagens e DLQ
HornetQ - 10.Reentrega de Mensagens e DLQ
 
HornetQ - 9.Mecanismo de Log
HornetQ - 9.Mecanismo de LogHornetQ - 9.Mecanismo de Log
HornetQ - 9.Mecanismo de Log
 
HornetQ - 8.Segurança
HornetQ - 8.SegurançaHornetQ - 8.Segurança
HornetQ - 8.Segurança
 
HornetQ - 6.Integração com JBoss 5
HornetQ - 6.Integração com JBoss 5HornetQ - 6.Integração com JBoss 5
HornetQ - 6.Integração com JBoss 5
 
HornetQ - 5.Transports
HornetQ - 5.TransportsHornetQ - 5.Transports
HornetQ - 5.Transports
 
HornetQ - 4.Persistência
HornetQ - 4.PersistênciaHornetQ - 4.Persistência
HornetQ - 4.Persistência
 
HornetQ - 2.Arquitetura do HornetQ
HornetQ - 2.Arquitetura do HornetQHornetQ - 2.Arquitetura do HornetQ
HornetQ - 2.Arquitetura do HornetQ
 
HornetQ - 2.1.HornetQ no Modo Standalone
HornetQ - 2.1.HornetQ no Modo StandaloneHornetQ - 2.1.HornetQ no Modo Standalone
HornetQ - 2.1.HornetQ no Modo Standalone
 
Hornet - 1.Conceitos de Mensageria
Hornet - 1.Conceitos de MensageriaHornet - 1.Conceitos de Mensageria
Hornet - 1.Conceitos de Mensageria
 
HornetQ - 16.Divert e Splitting de Mensagem
HornetQ - 16.Divert e Splitting de MensagemHornetQ - 16.Divert e Splitting de Mensagem
HornetQ - 16.Divert e Splitting de Mensagem
 
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeitaPalestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
 

Treinamento ajax 03