SlideShare une entreprise Scribd logo
1  sur  34
Autor: Thiago Baesso  Procaci ZK - Utilizando Ajax sem Javascript
[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],Propósito do ZK: Tornar o desenvolvimento de interfaces web simples.  Em outras palavras, facilitar a confecção de interfaces ricas.
Evolução das páginas web  Páginas HTML Estáticas Páginas HTML Dinâmicas (DHTML) Páginas com Flash, Applets Páginas com uso de Ajax
[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object]
Possibilidade de configurar atributos (como na decimalbox).  O input gerado assumirá valores nos moldes do atributo format Exemplo ZUML
[object Object],[object Object],[object Object],[object Object],[object Object],Ressaltando que o que ZK loader e o ZK AU engine rodam do lado do servidor e são compostos por Servlets Java. O ZK cliente engine é composto por cógido Javascript (roda no lado do cliente).
 
1 : Sempre um cliente faz a requisição de uma página através da URL, o ZK loader interpreta a requisição, gera a página HTML correspondente (baseado no código ZUML referente à URL requisitada) e cria objetos no servidor que permitirão a manipulação da interface da página.
2: Em seguida, o ZK loader envia a página HTML gerada para o cliente juntamente com o ZK client engine. O ZK client engine irá residir no “lado do cliente” e será responsável por monitorar os eventos disparados pelo browser.
3: Se qualquer evento for disparado no cliente, o ZK client engine irá enviá-lo (através de uma requisição Ajax) para o ZK AU engine localizado no servidor.
4: O ZK AU engine recebe a requisição Ajax, atualiza os objetos que manipulam os componentes de interface e retorna uma resposta para o cliente, relatando as modificações que página deverá sofrer.
5: Assim que o ZK client engine recebe a resposta, ele atualiza a representação visual da página
[object Object],[object Object],[object Object],[object Object],Vantagem:  O ZK prevê vários problemas de compatibilidade entre browsers.
[object Object],[object Object],[object Object],[object Object],[object Object]
Novo projeto no eclipse
Escolhendo o tipo de aplicação (Dynamic Web Project)
Nome do projeto: zkdemo Servidor: Apache Tomcat
[object Object],[object Object],[object Object],Já podemos começar a desenvolver o nosso exemplo inicial e rever os conceitos apresentados de forma prática.
Pacotes e classes do exemplo hello.zul    arquivo com o código ZUML da página. HelloWindow.java    classe java que irá manipular a página hello.zul Obs.: A extensão .zul é a utilizada para os arquivos que contêm código ZUML.
HelloWindow.java hello.zul
Atributo use aponta para HelloWindow HelloWindow.java hello.zul
Atributo use aponta para HelloWindow Ação do botão HelloWindow.java hello.zul
Atributo use aponta para HelloWindow Recupera o objeto que manipula a textbox através do id Ação do botão Manipula valor da textbox HelloWindow.java hello.zul
Aplicação Funcionando Só acessar    http://localhost:8080/zkdemo/hello.zul
Entendendo o Funcionando
[object Object],[object Object],Plug-in do eclipse que facilita o desenvolvimento de aplicações que utilizam o ZK
Configurando o ZK Studio Vá no menu help e clique em Software Updates
Clique em Add Site Configurando o ZK Studio
Configurando o ZK Studio Adicione em location: http://studioupdate.zkoss.org/studio/update
Configurando o ZK Studio Selecione a url do ZK Studio e clique em install
[object Object],[object Object],[object Object],[object Object]

Contenu connexe

Tendances

全自動Zabbix2.2&2.4
全自動Zabbix2.2&2.4全自動Zabbix2.2&2.4
全自動Zabbix2.2&2.4
真乙 九龍
 

Tendances (20)

情報共有ツールの 投資対効果を考える
情報共有ツールの投資対効果を考える情報共有ツールの投資対効果を考える
情報共有ツールの 投資対効果を考える
 
Office365事例を調べてみた(官公庁/自治体)
Office365事例を調べてみた(官公庁/自治体)Office365事例を調べてみた(官公庁/自治体)
Office365事例を調べてみた(官公庁/自治体)
 
はじめての Gatling
はじめての Gatlingはじめての Gatling
はじめての Gatling
 
クラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Age
クラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Ageクラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Age
クラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Age
 
LTspice超入門 マルツエレック marutsuelec
LTspice超入門 マルツエレック marutsuelecLTspice超入門 マルツエレック marutsuelec
LTspice超入門 マルツエレック marutsuelec
 
全自動Zabbix2.2&2.4
全自動Zabbix2.2&2.4全自動Zabbix2.2&2.4
全自動Zabbix2.2&2.4
 
【第7回】アジャイル・スクラム勉強会
【第7回】アジャイル・スクラム勉強会【第7回】アジャイル・スクラム勉強会
【第7回】アジャイル・スクラム勉強会
 
手作業なしの安定環境実現に向けたZabbix活用方法紹介+Zabbix2.4最新機能紹介
手作業なしの安定環境実現に向けたZabbix活用方法紹介+Zabbix2.4最新機能紹介手作業なしの安定環境実現に向けたZabbix活用方法紹介+Zabbix2.4最新機能紹介
手作業なしの安定環境実現に向けたZabbix活用方法紹介+Zabbix2.4最新機能紹介
 
Modelo Espiral
Modelo EspiralModelo Espiral
Modelo Espiral
 
aws health organizations notifications
aws health organizations notificationsaws health organizations notifications
aws health organizations notifications
 
Perfil do usuário, Personas, Cenários, Storyboard em IHC
Perfil do usuário, Personas, Cenários, Storyboard em IHCPerfil do usuário, Personas, Cenários, Storyboard em IHC
Perfil do usuário, Personas, Cenários, Storyboard em IHC
 
Modelo cascata
Modelo cascataModelo cascata
Modelo cascata
 
ActiveReports、20年の歩みとその魅力
ActiveReports、20年の歩みとその魅力ActiveReports、20年の歩みとその魅力
ActiveReports、20年の歩みとその魅力
 
An Introduction to AtoM, Archivematica, and Artefactual Systems
An Introduction to AtoM, Archivematica, and Artefactual SystemsAn Introduction to AtoM, Archivematica, and Artefactual Systems
An Introduction to AtoM, Archivematica, and Artefactual Systems
 
非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録
非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録
非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録
 
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL HOME'SでのSolrの構成と運用の変遷LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL HOME'SでのSolrの構成と運用の変遷
 
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)
 
Jitsi Meetとは?
Jitsi Meetとは?Jitsi Meetとは?
Jitsi Meetとは?
 
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
 
モノオク事業説明
モノオク事業説明モノオク事業説明
モノオク事業説明
 

En vedette

Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011
jimmybourassa
 

En vedette (20)

É Hora de criar sua própria engine de jogos?
É Hora de criar sua própria engine de jogos?É Hora de criar sua própria engine de jogos?
É Hora de criar sua própria engine de jogos?
 
Desenvolvimento de aplicações para o Google App Engine
Desenvolvimento de aplicações para o Google App EngineDesenvolvimento de aplicações para o Google App Engine
Desenvolvimento de aplicações para o Google App Engine
 
Tk03 Google App Engine Fr
Tk03 Google App Engine FrTk03 Google App Engine Fr
Tk03 Google App Engine Fr
 
Oficina Python e Google App Engine
Oficina Python e Google App EngineOficina Python e Google App Engine
Oficina Python e Google App Engine
 
Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13
Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13 Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13
Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13
 
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
 
Google App Engine - INTRO
Google App Engine - INTROGoogle App Engine - INTRO
Google App Engine - INTRO
 
Nuxeo WebEngine : Etude de cas
Nuxeo WebEngine : Etude de casNuxeo WebEngine : Etude de cas
Nuxeo WebEngine : Etude de cas
 
An introduction to Google's App Engine
An introduction to Google's App EngineAn introduction to Google's App Engine
An introduction to Google's App Engine
 
b2performance berth
b2performance berthb2performance berth
b2performance berth
 
Google Cloud Platform. Google App Engine
Google Cloud Platform. Google App Engine Google Cloud Platform. Google App Engine
Google Cloud Platform. Google App Engine
 
Search Engine Friendly Design (SEFD) - SMX München 2014
Search Engine Friendly Design (SEFD) - SMX München 2014Search Engine Friendly Design (SEFD) - SMX München 2014
Search Engine Friendly Design (SEFD) - SMX München 2014
 
Google App Engine. Zwei Jahre im Produktiveinsatz
Google App Engine. Zwei Jahre im ProduktiveinsatzGoogle App Engine. Zwei Jahre im Produktiveinsatz
Google App Engine. Zwei Jahre im Produktiveinsatz
 
Google App Engine For Java
Google App Engine For JavaGoogle App Engine For Java
Google App Engine For Java
 
FACT-Finder Webinar Recommendation Engine 2.0
FACT-Finder Webinar Recommendation Engine 2.0FACT-Finder Webinar Recommendation Engine 2.0
FACT-Finder Webinar Recommendation Engine 2.0
 
WordPress State of the Word 2012
WordPress State of the Word 2012WordPress State of the Word 2012
WordPress State of the Word 2012
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011
 
Cours Search Marketing - 1 Introduction - IAE Lille
Cours Search Marketing -  1 Introduction - IAE LilleCours Search Marketing -  1 Introduction - IAE Lille
Cours Search Marketing - 1 Introduction - IAE Lille
 
Cloud & Google app engine Presentation by Ngiambus Marcus
 Cloud & Google app engine Presentation  by Ngiambus Marcus Cloud & Google app engine Presentation  by Ngiambus Marcus
Cloud & Google app engine Presentation by Ngiambus Marcus
 

Similaire à Zk Framework

Laszlo, Framework focado em MVC
Laszlo, Framework focado em MVCLaszlo, Framework focado em MVC
Laszlo, Framework focado em MVC
raquelcarsi
 
Introdução ao Adobe Flex
Introdução ao Adobe FlexIntrodução ao Adobe Flex
Introdução ao Adobe Flex
Rafael Nunes
 

Similaire à Zk Framework (20)

Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)
 
Jsf
JsfJsf
Jsf
 
Laszlo, Framework focado em MVC
Laszlo, Framework focado em MVCLaszlo, Framework focado em MVC
Laszlo, Framework focado em MVC
 
Introdução ao ASP.NET 3.5 - Campus Party Brasil 2009
Introdução ao ASP.NET 3.5 - Campus Party Brasil 2009Introdução ao ASP.NET 3.5 - Campus Party Brasil 2009
Introdução ao ASP.NET 3.5 - Campus Party Brasil 2009
 
ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQuery
 
Aplicações Realtime em Android | Fisl 15 | GuMobileRS
Aplicações Realtime em Android | Fisl 15 | GuMobileRSAplicações Realtime em Android | Fisl 15 | GuMobileRS
Aplicações Realtime em Android | Fisl 15 | GuMobileRS
 
Programação para Web II: Estrutura de um projeto Java Web
Programação para Web II: Estrutura de um projeto Java WebProgramação para Web II: Estrutura de um projeto Java Web
Programação para Web II: Estrutura de um projeto Java Web
 
JavaServer Faces
JavaServer FacesJavaServer Faces
JavaServer Faces
 
Tw Dwr 2007 Ap01
Tw Dwr 2007 Ap01Tw Dwr 2007 Ap01
Tw Dwr 2007 Ap01
 
Web Services
Web ServicesWeb Services
Web Services
 
Gwt
GwtGwt
Gwt
 
AngularJS Components - Semana da Informática 2016
AngularJS Components - Semana da Informática 2016AngularJS Components - Semana da Informática 2016
AngularJS Components - Semana da Informática 2016
 
Grails
GrailsGrails
Grails
 
Desenvolvimento Ágil com Grails.
Desenvolvimento Ágil com Grails.Desenvolvimento Ágil com Grails.
Desenvolvimento Ágil com Grails.
 
Introdução ao Adobe Flex
Introdução ao Adobe FlexIntrodução ao Adobe Flex
Introdução ao Adobe Flex
 
1409243945064
14092439450641409243945064
1409243945064
 
Apache Wicket - Desenvolvimento WEB orientado a componentes
Apache Wicket - Desenvolvimento WEB orientado a componentesApache Wicket - Desenvolvimento WEB orientado a componentes
Apache Wicket - Desenvolvimento WEB orientado a componentes
 
AngularJS com ASP.NET MVC 4 - Binding, Eventos, Ajax, Validações e Rotas
AngularJS com ASP.NET MVC 4 - Binding, Eventos, Ajax, Validações e RotasAngularJS com ASP.NET MVC 4 - Binding, Eventos, Ajax, Validações e Rotas
AngularJS com ASP.NET MVC 4 - Binding, Eventos, Ajax, Validações e Rotas
 
Ajaxificando
AjaxificandoAjaxificando
Ajaxificando
 
Jsf – Java Sever Faces
Jsf – Java Sever FacesJsf – Java Sever Faces
Jsf – Java Sever Faces
 

Dernier

Dernier (6)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 

Zk Framework

  • 1. Autor: Thiago Baesso Procaci ZK - Utilizando Ajax sem Javascript
  • 2.
  • 3.
  • 4. Evolução das páginas web Páginas HTML Estáticas Páginas HTML Dinâmicas (DHTML) Páginas com Flash, Applets Páginas com uso de Ajax
  • 5.
  • 6.
  • 7.
  • 8. Possibilidade de configurar atributos (como na decimalbox). O input gerado assumirá valores nos moldes do atributo format Exemplo ZUML
  • 9.
  • 10.  
  • 11. 1 : Sempre um cliente faz a requisição de uma página através da URL, o ZK loader interpreta a requisição, gera a página HTML correspondente (baseado no código ZUML referente à URL requisitada) e cria objetos no servidor que permitirão a manipulação da interface da página.
  • 12. 2: Em seguida, o ZK loader envia a página HTML gerada para o cliente juntamente com o ZK client engine. O ZK client engine irá residir no “lado do cliente” e será responsável por monitorar os eventos disparados pelo browser.
  • 13. 3: Se qualquer evento for disparado no cliente, o ZK client engine irá enviá-lo (através de uma requisição Ajax) para o ZK AU engine localizado no servidor.
  • 14. 4: O ZK AU engine recebe a requisição Ajax, atualiza os objetos que manipulam os componentes de interface e retorna uma resposta para o cliente, relatando as modificações que página deverá sofrer.
  • 15. 5: Assim que o ZK client engine recebe a resposta, ele atualiza a representação visual da página
  • 16.
  • 17.
  • 18. Novo projeto no eclipse
  • 19. Escolhendo o tipo de aplicação (Dynamic Web Project)
  • 20. Nome do projeto: zkdemo Servidor: Apache Tomcat
  • 21.
  • 22. Pacotes e classes do exemplo hello.zul  arquivo com o código ZUML da página. HelloWindow.java  classe java que irá manipular a página hello.zul Obs.: A extensão .zul é a utilizada para os arquivos que contêm código ZUML.
  • 24. Atributo use aponta para HelloWindow HelloWindow.java hello.zul
  • 25. Atributo use aponta para HelloWindow Ação do botão HelloWindow.java hello.zul
  • 26. Atributo use aponta para HelloWindow Recupera o objeto que manipula a textbox através do id Ação do botão Manipula valor da textbox HelloWindow.java hello.zul
  • 27. Aplicação Funcionando Só acessar  http://localhost:8080/zkdemo/hello.zul
  • 29.
  • 30. Configurando o ZK Studio Vá no menu help e clique em Software Updates
  • 31. Clique em Add Site Configurando o ZK Studio
  • 32. Configurando o ZK Studio Adicione em location: http://studioupdate.zkoss.org/studio/update
  • 33. Configurando o ZK Studio Selecione a url do ZK Studio e clique em install
  • 34.