SlideShare uma empresa Scribd logo
1 de 21
Desvendando o Spring Web Flow Thiago Baesso Procaci
[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object]
Exemplo fluxo livre de navegação Links para direcionar o usuário.
[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],[object Object],[object Object],[object Object],[object Object]
JSF e Spring MVC    Possuem algumas diferenças do Struts, mas a idéia é praticamente a mesma para representar fluxos. faces-config.xml (JSF) Mesma idéia do struts-config.xml
[object Object],[object Object],[object Object],[object Object]
Exemplo prático. Considere o seguinte fluxo para manipulação de usuário (representado através de uma máquina de estados). Tela busca Tela detalhe Tela listagem As arestas são as transições de estado. q0, q1 e q2 são os estados. O funcionamento de estado + transições compõem o fluxo.
Funcionamento geral do fluxo Tela busca Tela detalhe Tela listagem
Máquina de estados no web flow Estado inicial Tela busca Tela detalhe Tela listagem
Analisando um estado View: referencia para telaBusca.xhtml As actions dos botões ou links disparam as transições. Bind com a variável nome. xhtml XML do fluxo
Disparando uma transição Tela busca Click em buscar Bean do container do spring na ação on render. Variáveis de bind transição Tela listagem Datatable iterando na variavel usuarioList
Tela de listagem telaListagem.xhtml
Meu controller é stateless. Não tem mais save state. Responsabilidade do spring web flow O reuso de fluxo, pode ser obtido através de herança ou subfluxos. O spring web flow permite.
[object Object],[object Object],[object Object]
Como testar um fluxo? Classe de apoio para os testes Instancia o mock (Mockito) Bean do fluxo XML com o fluxo a ser testado
 
Fim  

Mais conteúdo relacionado

Semelhante a Desvendando o Spring Web Flow

Padrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEBPadrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEBRafael França
 
Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...
Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...
Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...Esdras Da Silva
 
jQuery e ASP.Net MVC a dupla dinâmica
jQuery e ASP.Net MVC a dupla dinâmicajQuery e ASP.Net MVC a dupla dinâmica
jQuery e ASP.Net MVC a dupla dinâmicaVictor Cavalcante
 
Jsf – Java Sever Faces
Jsf – Java Sever FacesJsf – Java Sever Faces
Jsf – Java Sever Facesbielgott
 
Spring & Struts
Spring & StrutsSpring & Struts
Spring & Strutseduan
 
Programação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com DojoProgramação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com Dojofabioginzel
 
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSIAula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSIMaria Alice Jovinski
 
Aula 01 web server controls
Aula 01   web server controlsAula 01   web server controls
Aula 01 web server controlsGabriel Bugano
 

Semelhante a Desvendando o Spring Web Flow (20)

JavaServer Faces
JavaServer FacesJavaServer Faces
JavaServer Faces
 
Vocabulário visual senac 2015
Vocabulário visual   senac 2015Vocabulário visual   senac 2015
Vocabulário visual senac 2015
 
Padrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEBPadrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEB
 
Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...
Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...
Resenha Crítica Comparativa - Inovando o Desenvolvimento Web com JSF e Design...
 
JavaEE
JavaEEJavaEE
JavaEE
 
Java13
Java13Java13
Java13
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
jQuery e ASP.Net MVC a dupla dinâmica
jQuery e ASP.Net MVC a dupla dinâmicajQuery e ASP.Net MVC a dupla dinâmica
jQuery e ASP.Net MVC a dupla dinâmica
 
Jsf – Java Sever Faces
Jsf – Java Sever FacesJsf – Java Sever Faces
Jsf – Java Sever Faces
 
Asp net mvc
Asp net mvcAsp net mvc
Asp net mvc
 
Jsf
JsfJsf
Jsf
 
jQuery e ASP.Net mvc2
jQuery e ASP.Net mvc2jQuery e ASP.Net mvc2
jQuery e ASP.Net mvc2
 
Spring & Struts
Spring & StrutsSpring & Struts
Spring & Struts
 
Programação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com DojoProgramação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com Dojo
 
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSIAula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
 
DevQA: UI Testing , como fazer?
DevQA: UI Testing , como fazer?DevQA: UI Testing , como fazer?
DevQA: UI Testing , como fazer?
 
Jsf
JsfJsf
Jsf
 
ASP.NET AJAX
ASP.NET AJAXASP.NET AJAX
ASP.NET AJAX
 
Facebook flux
Facebook fluxFacebook flux
Facebook flux
 
Aula 01 web server controls
Aula 01   web server controlsAula 01   web server controls
Aula 01 web server controls
 

Desvendando o Spring Web Flow

  • 1. Desvendando o Spring Web Flow Thiago Baesso Procaci
  • 2.
  • 3.
  • 4. Exemplo fluxo livre de navegação Links para direcionar o usuário.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9. JSF e Spring MVC  Possuem algumas diferenças do Struts, mas a idéia é praticamente a mesma para representar fluxos. faces-config.xml (JSF) Mesma idéia do struts-config.xml
  • 10.
  • 11. Exemplo prático. Considere o seguinte fluxo para manipulação de usuário (representado através de uma máquina de estados). Tela busca Tela detalhe Tela listagem As arestas são as transições de estado. q0, q1 e q2 são os estados. O funcionamento de estado + transições compõem o fluxo.
  • 12. Funcionamento geral do fluxo Tela busca Tela detalhe Tela listagem
  • 13. Máquina de estados no web flow Estado inicial Tela busca Tela detalhe Tela listagem
  • 14. Analisando um estado View: referencia para telaBusca.xhtml As actions dos botões ou links disparam as transições. Bind com a variável nome. xhtml XML do fluxo
  • 15. Disparando uma transição Tela busca Click em buscar Bean do container do spring na ação on render. Variáveis de bind transição Tela listagem Datatable iterando na variavel usuarioList
  • 16. Tela de listagem telaListagem.xhtml
  • 17. Meu controller é stateless. Não tem mais save state. Responsabilidade do spring web flow O reuso de fluxo, pode ser obtido através de herança ou subfluxos. O spring web flow permite.
  • 18.
  • 19. Como testar um fluxo? Classe de apoio para os testes Instancia o mock (Mockito) Bean do fluxo XML com o fluxo a ser testado
  • 20.