More Related Content Similar to Java Server Faces (20) More from Mario Jorge Pereira (20) Java Server Faces12. 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
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
mariojp@gmail.com