SlideShare a Scribd company logo
Java Server Faces 2.2	

PrimeFaces 4.0	

Servlet 3.0	

Maven
Java Server Faces
java web
Mario Jorge Pereira
14

20

13

20

12

20

11

20

10

20

09

20

08

20

07

20

06

20

05

20

04

20

03

20

02

20
Agenda
• Maven	

• Servlet 3.0	

• Java Server Faces - JSF 2.2	

• PrimeFaces - Prime 4.0
File > New > Other…
Skip archetype selection
br.com.mariojp.labjsf
Project > Properties > Project Facets
Runtime

são
Ver
et e
Fac
<project 	
xmlns="http://maven.apache.org/POM/4.0.0" 	
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"	
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">	
	 <modelVersion>4.0.0</modelVersion>	
	 <groupId>br.com.mariojp</groupId>	
	 <artifactId>labjsf</artifactId>	
	 <version>0.0.1-SNAPSHOT</version>	
	 <name>labjsf</name>	
	 <packaging>war</packaging>	
</project>

pom.xml
adicionando jsf 2.2 e servlet 3.0

<project ... >	
...	
	 <dependencies>	
	 	 <dependency>	
	 	 	 <groupId>com.sun.faces</groupId>	
	 	 	 <artifactId>jsf-api</artifactId>	
	 	 	 <version>2.2.2</version>	
	 	 </dependency>	
	 	 <dependency>	
	 	 	 <groupId>com.sun.faces</groupId>	
	 	 	 <artifactId>jsf-impl</artifactId>	
	 	 	 <version>2.2.2</version>	
	 	 </dependency>	
	 	 <dependency>	
	 	 	 <groupId>javax.servlet</groupId>	
	 	 	 <artifactId>javax.servlet-api</artifactId>	
	 	 	 <version>3.0.1</version>	
	 	 </dependency>	
	 </dependencies>	
</project>

pom.xml
adicionando commons-fileupload

<project ... >	
...	
	 <dependencies>	
...	
	 	 <dependency>	
	 	 	 <groupId>commons-fileupload</groupId>	
	 	 	 <artifactId>commons-fileupload</artifactId>	
	 	 	 <version>1.3</version>	
	 	 </dependency>	
	 </dependencies>	
</project>

pom.xml
adicionando primefaces

<project ... >	
...	
	 <dependencies>	
...	
	 	 <dependency>	
	 	 	 <groupId>org.primefaces.themes</groupId>	
	 	 	 <artifactId>all-themes</artifactId>	
	 	 	 <version>1.0.10</version>	
	 	 </dependency>	
	 	 <dependency>	
	 	 	 <groupId>org.primefaces</groupId>	
	 	 	 <artifactId>primefaces</artifactId>	
	 	 	 <version>4.0</version>	
	 	 </dependency>	
	 <repositories>	
	 	 <repository>	
	 	 	 <id>prime-repo</id>	
	 	 	 <name>PrimeFaces Maven Repository</name>	
	 	 	 <url>http://repository.primefaces.org</url>	
	 	 	 <layout>default</layout>	
	 	 </repository>	
	 </repositories>	
</project>

pom.xml
Mapeando o Servlet do JSF
<?xml version="1.0" encoding="UTF-8"?>	
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"	
	 xmlns="http://java.sun.com/xml/ns/javaee"	
	 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 	
	 http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"	
	 version="3.0">	
<display-name>labjsf</display-name>	
<servlet>	
<servlet-name>Faces Servlet</servlet-name>	
<servlet-class>javax.faces.webapp.FacesServlet</servletclass>	
<load-on-startup>1</load-on-startup>	
</servlet>	
<servlet-mapping>	
<servlet-name>Faces Servlet</servlet-name>	
<url-pattern>*.jsf</url-pattern>	
</servlet-mapping>	
... 	
</web-app>

web.xml
Outras configurações
<?xml version="1.0" encoding="UTF-8"?>	
<web-app ...>	
...	
	<context-param>	
	 	 <param-name>primefaces.THEME</param-name>	
	 	 <param-value>bootstrap</param-value>	
	 </context-param>	
	 	
	 <welcome-file-list>	
	 	 <welcome-file>index.jsf</welcome-file>	
	 </welcome-file-list>	
!

	 <session-config>	
	 	 <session-timeout>30</session-timeout>	
	 </session-config>	
</web-app>

web.xml
<?xml version='1.0' encoding='UTF-8' ?>	
<!DOCTYPE html >	
<html xmlns=“http://www.w3.org/1999/xhtml”	
xmlns:ui=“http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"	
xmlns:f=“http://java.sun.com/jsf/core" >	
<f:view locale="en">	
	 <h:head>	
	 	 <title>JSF</title>	
	 	 <h:outputScript library="javax.faces" name="jsf.js" target="head" />	
	 </h:head>	
	 <h:body>	
	 	 <h4>JSF</h4>	
	 	 <h:form id="jsfForm">	
	 	 	 <h:inputText id="nome" value="#{mainController.nome}" />	
	 	 	 <h:commandButton value="Exibir">	
	 	 	 	 <f:ajax execute="nome" render=":jsfForm:nameGroup" />	
	 	 	 </h:commandButton>	
	 	 	 <br />	
	 	 	 <h:panelGroup id="nameGroup">	
	 	 	 	 <h:outputText value="Oi! #{mainController.nome}!!"	
	 	 	 	 	 rendered="#{not empty mainController.nome}" />	
	 	 	 </h:panelGroup>	
	 	 </h:form>	

!
	 </h:body>	
</f:view>	
</html>

index.xhtml
@ManagedBean	
@ViewScoped	
public class MainController implements Serializable {	
!

	 private String nome;	
!
!

	 public String getNome() {	
	 	 return nome;	
	 }	
!

	 public void setNome(String nome) {	
	 	 this.nome = nome;	
	 }	
!

}

br.com.mariojp.view.MainController.java
<?xml version='1.0' encoding='UTF-8' ?>	
<!DOCTYPE html >	
<html xmlns="http://www.w3.org/1999/xhtml"	
	 xmlns:ui="http://java.sun.com/jsf/facelets"	
	 xmlns:h="http://java.sun.com/jsf/html"	
	 xmlns:f="http://java.sun.com/jsf/core"	
	 xmlns:p="http://primefaces.org/ui">	
<f:view locale="en">	
	 <h:head>	
	 	 <title>PrimeFaces</title>	
	 	 <h:outputScript library="javax.faces" name="jsf.js" target="head" />	
	 </h:head>	
	 <h:body>	
	 	 <h4>PrimeFaces</h4>	
	 	 <h:form id="jsfForm">	
	 	 	 <p:inputText id="nome" value="#{mainController.nome}" >	
	 	 	 	 <p:ajax event="keyup" process="@this" update=":jsfForm:nameGroup" />	
	 	 	 </p:inputText>	
	 	 	 <br />	
	 	 	 <h:panelGroup id="nameGroup">	
	 	 	 	 <h:outputText value="OI! #{mainController.nome}!!"	
	 	 	 	 	 rendered="#{not empty mainController.nome}" />	
	 	 	 </h:panelGroup>	
	 	 </h:form>	
	 </h:body>	
</f:view>	
</html>	

index2.xhtml
@ManagedBean	
@SessionScoped	
public class LoginController implements Serializable

{	

!
	
	
	

private static final long serialVersionUID = 1L;	
private String usuario;	
private String senha;	

!
	
	
	

public String getUsuario() {	
	 return usuario;	
}	

!
	
	
	

public void setUsuario(String usuario) {	
	 this.usuario = usuario;	
}	

!
	
	
	

public String getSenha() {	
	 return senha;	
}	

!
	
	
	

public void setSenha(String senha) {	
	 this.senha = senha;	
}	

!
	
	
	

!
}	

public String autenticar() {
	 return "home"; 	
} 	

	

LoginController.java
<?xml version='1.0' encoding='UTF-8' ?>	
<!DOCTYPE html >	
<html xmlns="http://www.w3.org/1999/xhtml"	
	
xmlns:ui="http://java.sun.com/jsf/facelets"	
	
xmlns:h="http://java.sun.com/jsf/html"	
	
xmlns:f="http://java.sun.com/jsf/core"	
	
xmlns:p="http://primefaces.org/ui">	
<f:view locale="en">	
	
<h:head>	
	
	
<title>Login</title>	
	
	
<h:outputScript library="javax.faces" name="jsf.js" target="head" />	
	
</h:head>	
	
<h:body>	
	
	
<h4>PrimeFaces</h4>	 	
	
	
	
<h:form id="jsfForm">	
	
	
	
<p:panel id="panel" header="Login">	
	
	
	
	
<h:panelGrid columns="3">	
	
	
	
	
	
<h:outputLabel for="usuario" value="Usuario: *" />	
	
	
	
	
	
<p:inputText id="usuario" value=“#{loginController.usuario}" required="true"
label="Usuario">	
	
	
	
	
	
	
<f:validateLength minimum="2" />	
	
	
	
	
	
</p:inputText>	
	
	
	
	
	
<p:message for="usuario" />	
	
	
	
	
	
<h:outputLabel for="senha" value="Senha: *" />	
	
	
	
	
	
<p:password id="senha" value="#{loginController.senha}"	
	
	
required="true" label="Senha">	
	
	
	
	
	
</p:password>	
	
	
	
	
	
<p:message for="senha" />	
	
	
	
	
</h:panelGrid>	
	
	
	
</p:panel>	
	
	
	
<p:commandButton value="Enviar" id="ajax" update="panel"	
	
	
	
	
action="#{loginController.autenticar}" />	
	
	
</h:form>	
	
</h:body>	
</f:view>	
</html>

t
h

l
m

lo

.x
in
g
<?xml version='1.0' encoding='UTF-8' ?>	
<!DOCTYPE html >	
<html xmlns="http://www.w3.org/1999/xhtml"	
	 xmlns:ui="http://java.sun.com/jsf/facelets"	
	 xmlns:h="http://java.sun.com/jsf/html"	
	 xmlns:f="http://java.sun.com/jsf/core"	
	 xmlns:p="http://primefaces.org/ui">	
<f:view locale="en">	
	 <h:head>	
	 	 <title>Login</title>	
	 	 <h:outputScript library="javax.faces" name="jsf.js" target="head"
/>	
	 </h:head>	
	 <h:body>	
	 	 <h4>PrimeFaces</h4>	
	 	 <h:form id="jsfForm">	
	 	 	 <h:outputLabel value="#{loginController.usuario}" />	
	 	 </h:form>	
	 </h:body>	
</f:view>	
</html>

m
o
h

.x
e

l
tm
h
Java Server Faces
Esta obra está licenciada sob a licença Creative Commons
Atribuição-CompartilhaIgual 3.0 Não Adaptada. Para ver uma cópia
desta licença, visite http://creativecommons.org/licenses/by-sa/3.0/.
Java web
Mario Jorge Pereira
Como me encontrar?
http://www.mariojp.com.br
twitter.com/@mariojp
mariojp@gmail.com

More Related Content

PDF
Lecture 4: JavaServer Pages (JSP) & Expression Language (EL)
DOC
Java Servlets & JSP
PDF
Lecture 6 Web Sockets
PDF
JSF 2.0 Preview
PPSX
Java server pages
PDF
JavaOne - The JavaFX Community and Ecosystem
PPTX
Spring Framework Petclinic sample application
PDF
Step By Step Guide For Buidling Simple Struts App
Lecture 4: JavaServer Pages (JSP) & Expression Language (EL)
Java Servlets & JSP
Lecture 6 Web Sockets
JSF 2.0 Preview
Java server pages
JavaOne - The JavaFX Community and Ecosystem
Spring Framework Petclinic sample application
Step By Step Guide For Buidling Simple Struts App

What's hot (20)

PPT
Jsp/Servlet
PDF
JAVA EE DEVELOPMENT (JSP and Servlets)
PPT
JSF Component Behaviors
PPTX
Resthub framework presentation
PPT
1 java servlets and jsp
PPS
Jsp element
PDF
JavaServer Faces 2.0 - JavaOne India 2011
PPTX
Resthub lyonjug
PDF
JavaFX – 10 things I love about you
PDF
#31.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
DOCX
Html servlet example
PDF
Tomcat + other things
PDF
Spring Framework - Web Flow
PPTX
Wt unit 3
ODP
A Complete Tour of JSF 2
PPTX
Cis 274 intro
PPSX
Selenium WebDriver
PDF
Spring Framework - AOP
PPTX
Implicit object.pptx
PPT
Introduction to the Servlet / JSP course
Jsp/Servlet
JAVA EE DEVELOPMENT (JSP and Servlets)
JSF Component Behaviors
Resthub framework presentation
1 java servlets and jsp
Jsp element
JavaServer Faces 2.0 - JavaOne India 2011
Resthub lyonjug
JavaFX – 10 things I love about you
#31.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
Html servlet example
Tomcat + other things
Spring Framework - Web Flow
Wt unit 3
A Complete Tour of JSF 2
Cis 274 intro
Selenium WebDriver
Spring Framework - AOP
Implicit object.pptx
Introduction to the Servlet / JSP course
Ad

Similar to Java Server Faces (20)

PDF
JavaDo#09 Spring boot入門ハンズオン
PDF
Ajax, JSF, Facelets, Eclipse & Maven tutorials
DOCX
Pom configuration java xml
DOCX
Pom
PDF
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
KEY
Taking your Web App for a walk
DOCX
Automation Frame works Instruction Sheet
PDF
Spring Boot and JHipster
PDF
Symfony2 revealed
PDF
vJUG - The JavaFX Ecosystem
PDF
Rails 3 overview
PDF
Spring into rails
PPT
JAX-WS Basics
PDF
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
PDF
How to connect redis and mule esb using spring data redis module
PDF
Play vs Rails
PPT
Maven in Mule
PPT
Training in Android with Maven
PDF
Rails 3: Dashing to the Finish
JavaDo#09 Spring boot入門ハンズオン
Ajax, JSF, Facelets, Eclipse & Maven tutorials
Pom configuration java xml
Pom
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Taking your Web App for a walk
Automation Frame works Instruction Sheet
Spring Boot and JHipster
Symfony2 revealed
vJUG - The JavaFX Ecosystem
Rails 3 overview
Spring into rails
JAX-WS Basics
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
How to connect redis and mule esb using spring data redis module
Play vs Rails
Maven in Mule
Training in Android with Maven
Rails 3: Dashing to the Finish
Ad

More from Mario Jorge Pereira (20)

PDF
Educacao e Inteligencia Artificial Generativa
PDF
Labs Jogos Java
PDF
PDF
Lógica de Programação e Algoritmos
PDF
Guia rapido java v2
PDF
Guia Rápido de Referência Java
PDF
Android por onde começar? Mini Curso Erbase 2015
PDF
Java Nuvem Appengine
PDF
Mini curso Android
PDF
Minicurso Android
PDF
Android, por onde começar?
PDF
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
PDF
Android e Cloud Computing
PDF
RMI (Remote Method Invocation)
PDF
Java e Cloud Computing
PDF
GUI - Eventos
Educacao e Inteligencia Artificial Generativa
Labs Jogos Java
Lógica de Programação e Algoritmos
Guia rapido java v2
Guia Rápido de Referência Java
Android por onde começar? Mini Curso Erbase 2015
Java Nuvem Appengine
Mini curso Android
Minicurso Android
Android, por onde começar?
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
Android e Cloud Computing
RMI (Remote Method Invocation)
Java e Cloud Computing
GUI - Eventos

Recently uploaded (20)

PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PPTX
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
Practical Manual AGRO-233 Principles and Practices of Natural Farming
PDF
Computing-Curriculum for Schools in Ghana
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
Complications of Minimal Access Surgery at WLH
PDF
A systematic review of self-coping strategies used by university students to ...
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Yogi Goddess Pres Conference Studio Updates
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
01-Introduction-to-Information-Management.pdf
PDF
What if we spent less time fighting change, and more time building what’s rig...
PDF
Updated Idioms and Phrasal Verbs in English subject
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PDF
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf
PDF
LDMMIA Reiki Yoga Finals Review Spring Summer
PDF
Classroom Observation Tools for Teachers
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PPTX
Orientation - ARALprogram of Deped to the Parents.pptx
Chinmaya Tiranga quiz Grand Finale.pdf
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
Final Presentation General Medicine 03-08-2024.pptx
Practical Manual AGRO-233 Principles and Practices of Natural Farming
Computing-Curriculum for Schools in Ghana
STATICS OF THE RIGID BODIES Hibbelers.pdf
Complications of Minimal Access Surgery at WLH
A systematic review of self-coping strategies used by university students to ...
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Yogi Goddess Pres Conference Studio Updates
Final Presentation General Medicine 03-08-2024.pptx
01-Introduction-to-Information-Management.pdf
What if we spent less time fighting change, and more time building what’s rig...
Updated Idioms and Phrasal Verbs in English subject
202450812 BayCHI UCSC-SV 20250812 v17.pptx
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf
LDMMIA Reiki Yoga Finals Review Spring Summer
Classroom Observation Tools for Teachers
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Orientation - ARALprogram of Deped to the Parents.pptx

Java Server Faces

  • 1. Java Server Faces 2.2 PrimeFaces 4.0 Servlet 3.0 Maven
  • 5. Agenda • Maven • Servlet 3.0 • Java Server Faces - JSF 2.2 • PrimeFaces - Prime 4.0
  • 6. File > New > Other…
  • 9. Project > Properties > Project Facets
  • 11. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>br.com.mariojp</groupId> <artifactId>labjsf</artifactId> <version>0.0.1-SNAPSHOT</version> <name>labjsf</name> <packaging>war</packaging> </project> pom.xml
  • 12. adicionando jsf 2.2 e servlet 3.0 <project ... > ... <dependencies> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-api</artifactId> <version>2.2.2</version> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-impl</artifactId> <version>2.2.2</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> </dependency> </dependencies> </project> pom.xml
  • 13. adicionando commons-fileupload <project ... > ... <dependencies> ... <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3</version> </dependency> </dependencies> </project> pom.xml
  • 14. adicionando primefaces <project ... > ... <dependencies> ... <dependency> <groupId>org.primefaces.themes</groupId> <artifactId>all-themes</artifactId> <version>1.0.10</version> </dependency> <dependency> <groupId>org.primefaces</groupId> <artifactId>primefaces</artifactId> <version>4.0</version> </dependency> <repositories> <repository> <id>prime-repo</id> <name>PrimeFaces Maven Repository</name> <url>http://repository.primefaces.org</url> <layout>default</layout> </repository> </repositories> </project> pom.xml
  • 15. Mapeando o Servlet do JSF <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>labjsf</display-name> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servletclass> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.jsf</url-pattern> </servlet-mapping> ... </web-app> web.xml
  • 16. Outras configurações <?xml version="1.0" encoding="UTF-8"?> <web-app ...> ... <context-param> <param-name>primefaces.THEME</param-name> <param-value>bootstrap</param-value> </context-param> <welcome-file-list> <welcome-file>index.jsf</welcome-file> </welcome-file-list> ! <session-config> <session-timeout>30</session-timeout> </session-config> </web-app> web.xml
  • 17. <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html > <html xmlns=“http://www.w3.org/1999/xhtml” xmlns:ui=“http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f=“http://java.sun.com/jsf/core" > <f:view locale="en"> <h:head> <title>JSF</title> <h:outputScript library="javax.faces" name="jsf.js" target="head" /> </h:head> <h:body> <h4>JSF</h4> <h:form id="jsfForm"> <h:inputText id="nome" value="#{mainController.nome}" /> <h:commandButton value="Exibir"> <f:ajax execute="nome" render=":jsfForm:nameGroup" /> </h:commandButton> <br /> <h:panelGroup id="nameGroup"> <h:outputText value="Oi! #{mainController.nome}!!" rendered="#{not empty mainController.nome}" /> </h:panelGroup> </h:form> ! </h:body> </f:view> </html> index.xhtml
  • 18. @ManagedBean @ViewScoped public class MainController implements Serializable { ! private String nome; ! ! public String getNome() { return nome; } ! public void setNome(String nome) { this.nome = nome; } ! } br.com.mariojp.view.MainController.java
  • 19. <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://primefaces.org/ui"> <f:view locale="en"> <h:head> <title>PrimeFaces</title> <h:outputScript library="javax.faces" name="jsf.js" target="head" /> </h:head> <h:body> <h4>PrimeFaces</h4> <h:form id="jsfForm"> <p:inputText id="nome" value="#{mainController.nome}" > <p:ajax event="keyup" process="@this" update=":jsfForm:nameGroup" /> </p:inputText> <br /> <h:panelGroup id="nameGroup"> <h:outputText value="OI! #{mainController.nome}!!" rendered="#{not empty mainController.nome}" /> </h:panelGroup> </h:form> </h:body> </f:view> </html> index2.xhtml
  • 20. @ManagedBean @SessionScoped public class LoginController implements Serializable { ! private static final long serialVersionUID = 1L; private String usuario; private String senha; ! public String getUsuario() { return usuario; } ! public void setUsuario(String usuario) { this.usuario = usuario; } ! public String getSenha() { return senha; } ! public void setSenha(String senha) { this.senha = senha; } ! ! } public String autenticar() { return "home"; } LoginController.java
  • 21. <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://primefaces.org/ui"> <f:view locale="en"> <h:head> <title>Login</title> <h:outputScript library="javax.faces" name="jsf.js" target="head" /> </h:head> <h:body> <h4>PrimeFaces</h4> <h:form id="jsfForm"> <p:panel id="panel" header="Login"> <h:panelGrid columns="3"> <h:outputLabel for="usuario" value="Usuario: *" /> <p:inputText id="usuario" value=“#{loginController.usuario}" required="true" label="Usuario"> <f:validateLength minimum="2" /> </p:inputText> <p:message for="usuario" /> <h:outputLabel for="senha" value="Senha: *" /> <p:password id="senha" value="#{loginController.senha}" required="true" label="Senha"> </p:password> <p:message for="senha" /> </h:panelGrid> </p:panel> <p:commandButton value="Enviar" id="ajax" update="panel" action="#{loginController.autenticar}" /> </h:form> </h:body> </f:view> </html> t h l m lo .x in g
  • 22. <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://primefaces.org/ui"> <f:view locale="en"> <h:head> <title>Login</title> <h:outputScript library="javax.faces" name="jsf.js" target="head" /> </h:head> <h:body> <h4>PrimeFaces</h4> <h:form id="jsfForm"> <h:outputLabel value="#{loginController.usuario}" /> </h:form> </h:body> </f:view> </html> m o h .x e l tm h
  • 24. Esta obra está licenciada sob a licença Creative Commons Atribuição-CompartilhaIgual 3.0 Não Adaptada. Para ver uma cópia desta licença, visite http://creativecommons.org/licenses/by-sa/3.0/.
  • 25. Java web Mario Jorge Pereira Como me encontrar? http://www.mariojp.com.br twitter.com/@mariojp [email protected]