SlideShare uma empresa Scribd logo
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 Spring Web Flow

JavaServer Faces
JavaServer FacesJavaServer Faces
JavaServer Faces
armeniocardoso
 
Vocabulário visual senac 2015
Vocabulário visual   senac 2015Vocabulário visual   senac 2015
Vocabulário visual senac 2015
Hélio Eduardo Lopes
 
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
Rafael 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
 
JavaEE
JavaEEJavaEE
Java13
Java13Java13
Curso jsf
Curso jsfCurso jsf
Curso jsf
jornaljava
 
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
Victor Cavalcante
 
Jsf – Java Sever Faces
Jsf – Java Sever FacesJsf – Java Sever Faces
Jsf – Java Sever Faces
bielgott
 
Asp net mvc
Asp net mvcAsp net mvc
Jsf
JsfJsf
jQuery e ASP.Net mvc2
jQuery e ASP.Net mvc2jQuery e ASP.Net mvc2
jQuery e ASP.Net mvc2
Victor Cavalcante
 
Spring & Struts
Spring & StrutsSpring & Struts
Spring & Struts
eduan
 
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
fabioginzel
 
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
Maria Alice Jovinski
 
DevQA: UI Testing , como fazer?
DevQA: UI Testing , como fazer?DevQA: UI Testing , como fazer?
DevQA: UI Testing , como fazer?
Kamilla Queiroz Xavier
 
Jsf
JsfJsf
ASP.NET AJAX
ASP.NET AJAXASP.NET AJAX
ASP.NET AJAX
Nelson Correia
 
Facebook flux
Facebook fluxFacebook flux
Aula 01 web server controls
Aula 01   web server controlsAula 01   web server controls
Aula 01 web server controls
Gabriel Bugano
 

Semelhante a 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
 

Último

Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 

Último (8)

Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 

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.