Enviar pesquisa
Carregar
VRaptor 4 & Plugins Guide
•
1 gostou
•
1,166 visualizações
Título melhorado com IA
L
Leonardo Wolter
Seguir
Aprenda a como encontrar, usar e construir novos plugins utilizando o VRaptor4!
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 60
Baixar agora
Baixar para ler offline
Recomendados
Deploy Rails
Deploy Rails
Dante Regis
Tom cat e eclipse
Tom cat e eclipse
Rodrigo Lueneberg
Trabalhando de forma profissional com silex
Trabalhando de forma profissional com silex
Michael Douglas
Jdk
Jdk
bielgott
React Native na globo.com
React Native na globo.com
Guilherme Heynemann Bruzzi
playframework-intro
playframework-intro
Alberto Souza
Controle de Permissão com VRaptor - QCon SP 2011
Controle de Permissão com VRaptor - QCon SP 2011
Washington Botelho
Vyziva a reprodukcia March 22 2010
Vyziva a reprodukcia March 22 2010
miloshaa
Recomendados
Deploy Rails
Deploy Rails
Dante Regis
Tom cat e eclipse
Tom cat e eclipse
Rodrigo Lueneberg
Trabalhando de forma profissional com silex
Trabalhando de forma profissional com silex
Michael Douglas
Jdk
Jdk
bielgott
React Native na globo.com
React Native na globo.com
Guilherme Heynemann Bruzzi
playframework-intro
playframework-intro
Alberto Souza
Controle de Permissão com VRaptor - QCon SP 2011
Controle de Permissão com VRaptor - QCon SP 2011
Washington Botelho
Vyziva a reprodukcia March 22 2010
Vyziva a reprodukcia March 22 2010
miloshaa
Pandey Classes Faculty Members
Pandey Classes Faculty Members
pandeyclasses
Wedding Invitation
Wedding Invitation
psychoticseph
Education Mela Canada
Education Mela Canada
Future Link Consultants
FrontInVale 2016: Webpack - A evolução do asset pipeline (Lightning Talk)
FrontInVale 2016: Webpack - A evolução do asset pipeline (Lightning Talk)
Aryel Tupinambá
Technology in the classroom
Technology in the classroom
lonifife
Конкурсная работа «Столица событийного туризма»
Конкурсная работа «Столица событийного туризма»
Светлана Воздвиженская
Canada student Visa
Canada student Visa
Future Link Consultants
Nuevas tics
Nuevas tics
Diannitha Hoyos G
Storyboard
Storyboard
ZoeYanz
отчет за 2013 год
отчет за 2013 год
Светлана Воздвиженская
Informe de gestión y acta de empalme
Informe de gestión y acta de empalme
Municipio de Abriaquí
Using Mobility to Nurture Customer Loyalty
Using Mobility to Nurture Customer Loyalty
SMART Service Desk
рцо «арсенал»
рцо «арсенал»
Светлана Воздвиженская
English inmersion 2011
English inmersion 2011
kenjabib
20120717 role of dna to promote cdm
20120717 role of dna to promote cdm
Tsendsuren Batsuuri
Confederation college ppt
Confederation college ppt
Future Link Consultants
English inmersion 2011
English inmersion 2011
kenjabib
Test 2 study guide
Test 2 study guide
Zhariff Zabidi
Training sale man ftth
Training sale man ftth
Nguyen Phan Giang
Public Lecture "City Identity and City Branding: Case of Kharkov"
Public Lecture "City Identity and City Branding: Case of Kharkov"
Oleksiy Musiyezdov
Conceitos básicos VRaptor - Criando uma agenda
Conceitos básicos VRaptor - Criando uma agenda
Mateus Parente
W2py pyconpe
W2py pyconpe
Ovidio Marinho
Mais conteúdo relacionado
Destaque
Pandey Classes Faculty Members
Pandey Classes Faculty Members
pandeyclasses
Wedding Invitation
Wedding Invitation
psychoticseph
Education Mela Canada
Education Mela Canada
Future Link Consultants
FrontInVale 2016: Webpack - A evolução do asset pipeline (Lightning Talk)
FrontInVale 2016: Webpack - A evolução do asset pipeline (Lightning Talk)
Aryel Tupinambá
Technology in the classroom
Technology in the classroom
lonifife
Конкурсная работа «Столица событийного туризма»
Конкурсная работа «Столица событийного туризма»
Светлана Воздвиженская
Canada student Visa
Canada student Visa
Future Link Consultants
Nuevas tics
Nuevas tics
Diannitha Hoyos G
Storyboard
Storyboard
ZoeYanz
отчет за 2013 год
отчет за 2013 год
Светлана Воздвиженская
Informe de gestión y acta de empalme
Informe de gestión y acta de empalme
Municipio de Abriaquí
Using Mobility to Nurture Customer Loyalty
Using Mobility to Nurture Customer Loyalty
SMART Service Desk
рцо «арсенал»
рцо «арсенал»
Светлана Воздвиженская
English inmersion 2011
English inmersion 2011
kenjabib
20120717 role of dna to promote cdm
20120717 role of dna to promote cdm
Tsendsuren Batsuuri
Confederation college ppt
Confederation college ppt
Future Link Consultants
English inmersion 2011
English inmersion 2011
kenjabib
Test 2 study guide
Test 2 study guide
Zhariff Zabidi
Training sale man ftth
Training sale man ftth
Nguyen Phan Giang
Public Lecture "City Identity and City Branding: Case of Kharkov"
Public Lecture "City Identity and City Branding: Case of Kharkov"
Oleksiy Musiyezdov
Destaque
(20)
Pandey Classes Faculty Members
Pandey Classes Faculty Members
Wedding Invitation
Wedding Invitation
Education Mela Canada
Education Mela Canada
FrontInVale 2016: Webpack - A evolução do asset pipeline (Lightning Talk)
FrontInVale 2016: Webpack - A evolução do asset pipeline (Lightning Talk)
Technology in the classroom
Technology in the classroom
Конкурсная работа «Столица событийного туризма»
Конкурсная работа «Столица событийного туризма»
Canada student Visa
Canada student Visa
Nuevas tics
Nuevas tics
Storyboard
Storyboard
отчет за 2013 год
отчет за 2013 год
Informe de gestión y acta de empalme
Informe de gestión y acta de empalme
Using Mobility to Nurture Customer Loyalty
Using Mobility to Nurture Customer Loyalty
рцо «арсенал»
рцо «арсенал»
English inmersion 2011
English inmersion 2011
20120717 role of dna to promote cdm
20120717 role of dna to promote cdm
Confederation college ppt
Confederation college ppt
English inmersion 2011
English inmersion 2011
Test 2 study guide
Test 2 study guide
Training sale man ftth
Training sale man ftth
Public Lecture "City Identity and City Branding: Case of Kharkov"
Public Lecture "City Identity and City Branding: Case of Kharkov"
Semelhante a VRaptor 4 & Plugins Guide
Conceitos básicos VRaptor - Criando uma agenda
Conceitos básicos VRaptor - Criando uma agenda
Mateus Parente
W2py pyconpe
W2py pyconpe
Ovidio Marinho
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2py
Relsi Maron
Comet - ReverseAjax com DWR - Resumo
Comet - ReverseAjax com DWR - Resumo
Handerson Frota
ASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVC
Felipe Pimentel
JavaCE Conference 2012: ExtJS 4 + VRaptor
JavaCE Conference 2012: ExtJS 4 + VRaptor
Loiane Groner
PHP Symfony, Vale A Pena
PHP Symfony, Vale A Pena
Marcelo Fleury
PHP Conference 2016
PHP Conference 2016
Edison Costa
Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5
Andre A. Verissimo da Silva
Login de usuários: podemos fazer algo melhor que usar senhas ou serviços cent...
Login de usuários: podemos fazer algo melhor que usar senhas ou serviços cent...
Francois Marier
Aprendendo a criar plugins para o Wordpress - Richard Barros
Aprendendo a criar plugins para o Wordpress - Richard Barros
Richard Barros
Vraptor apresentação das funcionalidades
Vraptor apresentação das funcionalidades
Wilton Silva
Curso de Wordpress - Do Zero ao Site no Ar
Curso de Wordpress - Do Zero ao Site no Ar
Renzo Colnago
Desmistificando web2py - #TDC2011
Desmistificando web2py - #TDC2011
Bruno Rocha
(A04 e A05) LabMM3 - JavaScript
(A04 e A05) LabMM3 - JavaScript
Carlos Santos
Php7 esta chgando! O que você precisa saber
Php7 esta chgando! O que você precisa saber
Er Galvão Abbott
Desenvolvimento web ágil com Python e web2py #qconsp #qcon
Desenvolvimento web ágil com Python e web2py #qconsp #qcon
Bruno Rocha
Debug de cabo a rabo
Debug de cabo a rabo
Ricardo Moraleida
Otimizando a execução de código-fonte PHP
Otimizando a execução de código-fonte PHP
Er Galvão Abbott
Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...
Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...
fabio perrella
Semelhante a VRaptor 4 & Plugins Guide
(20)
Conceitos básicos VRaptor - Criando uma agenda
Conceitos básicos VRaptor - Criando uma agenda
W2py pyconpe
W2py pyconpe
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2py
Comet - ReverseAjax com DWR - Resumo
Comet - ReverseAjax com DWR - Resumo
ASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVC
JavaCE Conference 2012: ExtJS 4 + VRaptor
JavaCE Conference 2012: ExtJS 4 + VRaptor
PHP Symfony, Vale A Pena
PHP Symfony, Vale A Pena
PHP Conference 2016
PHP Conference 2016
Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5
Login de usuários: podemos fazer algo melhor que usar senhas ou serviços cent...
Login de usuários: podemos fazer algo melhor que usar senhas ou serviços cent...
Aprendendo a criar plugins para o Wordpress - Richard Barros
Aprendendo a criar plugins para o Wordpress - Richard Barros
Vraptor apresentação das funcionalidades
Vraptor apresentação das funcionalidades
Curso de Wordpress - Do Zero ao Site no Ar
Curso de Wordpress - Do Zero ao Site no Ar
Desmistificando web2py - #TDC2011
Desmistificando web2py - #TDC2011
(A04 e A05) LabMM3 - JavaScript
(A04 e A05) LabMM3 - JavaScript
Php7 esta chgando! O que você precisa saber
Php7 esta chgando! O que você precisa saber
Desenvolvimento web ágil com Python e web2py #qconsp #qcon
Desenvolvimento web ágil com Python e web2py #qconsp #qcon
Debug de cabo a rabo
Debug de cabo a rabo
Otimizando a execução de código-fonte PHP
Otimizando a execução de código-fonte PHP
Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...
Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...
VRaptor 4 & Plugins Guide
1.
VRaptor 4 & Plugins
2.
Leonardo Wolter github.com/leocwolter leonardo.wolter@caelum.com.br
3.
github.com/leocwolter
4.
O que é
o VRaptor?
5.
Existe de monte! Mas
framework MVC
6.
Extensível Customizável &
7.
8.
AdminController/paga-muito-dinheiro
9.
AdminController/admin/paga-muito-dinheiro
10.
/admin/paga-muito-dinheiro AdminController SÓ ADMINS
11.
Seu plugin
12.
Existem MUITOS!
13.
Antes de criar, Pesquise! github.com/caelum/vraptor-contrib vraptor.org/en/docs/plugins
14.
15.
ErrorControl SimpleMailEnvio de email
{
16.
ErrorControl SimpleMail Hibernate JPA Envio de email Controle
de { Transações {
17.
ErrorControl SimpleMail Hibernate JPA Routes Brutauth Envio de email Controle
de { Transações { Controle de Rotas {
18.
LEGAL. E COMO EU
USO UM?
19.
Autorização com VRaptor-Brutauth! github.com/caelum/vraptor-brutauth
20.
1 Vraptor-contrib
21.
2 Versão mais
Atual
22.
2 Versão mais
Atual
23.
3 DependênciaPOM.xml <dependency> <groupId>br.com.caelum.vraptor</groupId> <artifactId>vraptor-brutauth</artifactId> <version>4.0.0.Final</version> </dependency>
24.
1 Vraptor-contrib 2 Versão
mais Atual 3 DependênciaPOM.xml
25.
1 Crie uma
regra public class LoginRule implements CustomBrutauthRule{ @Inject private Sessao sessao; public boolean isAllowed() { return sessao.estaLogado(); } }
26.
2 Anote sua
action @CustomBrutauthRules(LoginRule.class) public void adicionaForm() {}
27.
1 Crie uma
regra 2 Anote sua action
28.
3 Teste!
29.
VALIDAÇÃO COM SIMPLE-VALIDATOR github.com/caelum/vraptor-simple-validator
30.
REPITA!
31.
1 Vraptor-contrib REPITA!
32.
1 Vraptor-contrib 2 Versão
mais Atual REPITA!
33.
1 Vraptor-contrib 2 Versão
mais Atual 3 DependênciaPOM.xml REPITA!
34.
1 Injete SimpleValidator @Inject private
final SimpleValidator validator;
35.
2 Valide seu
campo validator.validate(contato.getNome(), ValidationStrategies.lengthBiggerThan(4L))
36.
3 Confirmação validator.validate(contato.getNome(), ValidationStrategies.lengthBiggerThan(4l)) .onSuccessAddConfirmation(“contato.adicionado”);
37.
4 Para onde
ir? validator.validate(contato.getNome(), ValidationStrategies.lengthBiggerThan(4l)) .onSuccessAddConfirmation(“contato.adicionado”, contato.getNome()); .onErrorRedirectTo(this).adicionaForm();
38.
5 Message.properties ValidationStrategies.lengthBiggerThan =
O campo precisa ter mais de {0} caracteres! validator.validate(contato.getNome(), ValidationStrategies. lengthBiggerThan(4l))
39.
5 Message.properties contato.adicionado =
O contato foi adicionado com sucesso! .onSuccessAddConfirmation(“contato.adicionado”);
40.
1 Injete SimpleValidator 2
Valide seu campo 3 Mensagem de confirmação(opcional) 4 Para onde ir se der erro? 5 Messages.properties
41.
6 Teste!
42.
:) EU QUERO FAZER U PLUGIN
43.
PHP é mais
rápido!
44.
45.
SOLUÇÃO PROVISÓRIA PERMANENTE
46.
http://localhost:8080/index.php
47.
http://localhost:8080/index.php
48.
/admin/paga-muito-dinheiro AdminController
49.
/paga-muito-dinheiro.php
50.
GAMBS PERMANENTE VRAPTOR-PHPFIER
51.
1 vraptor.org/javadoc Qual classe sobrescrever? && github.com/caelum/vraptor4
52.
2 Extenda a
classe! public class PhpfierRouter extends PathAnnotationRoutesParser{}
53.
3 Fale para
o CDI! @Specializes public class PhpfierRouter extends PathAnnotationRoutesParser{}
54.
4 Delegue o
construtor! @Inject public PhpfierRouter(Router router) { super(router); }
55.
@Override protected String defaultUriFor(...)
{ return super.defaultUriFor(...)+".php"; } 5 Sobrescreva o método!
56.
6 Teste!
57.
7 Extraia!
58.
8 beans.xml!
59.
9 Dependencia!
60.
Leonardo Wolter github.com/leocwolter leonardo.wolter@caelum.com.br OBRIGADO!
Baixar agora