Sie sind auf Seite 1von 40

Paulo Henrique PH

palerique@gmail.com

<div id="cabecalho">
<h:graphicImage
library="img"
name="logo2.png" />
</div>

<?xml version="1.0" encoding="UTF-8" ?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">

<h:head />

<h:body>
<div id="cabecalho">
<h:graphicImage library="img" name="logo2.png" />
<h1>
<ui:insert name="titulo"></ui:insert>
</h1>
</div>
<div id="conteudo">
<ui:insert name="conteudo">
</ui:insert>
</div>
</h:body>
</html>

<?xml version="1.0" encoding="UTF-8" ?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<ui:composition template="_template.xhtml">

</ui:composition>
</html>

<ui:composition template="_template.xhtml">
<ui:define name="titulo">
<h:outputText value="Novo Usurio"
rendered="#{empty usuarioBean.usuario.id}" />
<h:outputText value="Editar Usurio"
rendered="#{not empty usuarioBean.usuario.id} />
</ui:define>
</ui:composition>
</html>

<ui:define name="conteudo">
</ui:define>

</ui:composition>
</html>

<ui:define name="conteudo">
<h:form>
<fieldset>
<legend>Dados do Usurio</legend>
<h:panelGrid columns="2">
<h:outputLabel value="Nome:" for="nome" />
<h:inputText id="nome" value="#{usuarioBean.usuario.nomeCompleto}" />
<h:outputLabel value="Login:" for="login" />
<h:inputText id="login" value="#{usuarioBean.usuario.login}" />
<h:outputLabel value="E-mail:" for="email" />
<h:inputText id="email" value="#{usuarioBean.usuario.email}" />
<h:outputLabel value="Senha:" for="senha" />
<h:inputSecret id="senha" value="#{usuarioBean.usuario.senha}" />
</h:panelGrid>
<h:commandButton value="Gravar" action="#{usuarioBean.grava}">
<f:ajax execute="@form" render="@all" />
</h:commandButton>
</fieldset>

<fieldset>
<legend>Usurios Cadastrados</legend>
<h:dataTable var="usuario" value="#{usuarioBean.usuarios}
id="tabelaUsuarios">
<h:column>
<f:facet name="header">Nome:</f:facet>
#{usuario.nomeCompleto}
</h:column>
<h:column>
<f:facet name="header">Login:</f:facet>
#{usuario.login}
</h:column>
<h:column>
<f:facet name="header">Senha:</f:facet>
#{usuario.senha}
</h:column>
<h:column>
<f:facet name="header">E-mail:</f:facet>
#{usuario.email}
</h:column>

<h:column>
<f:facet name="header">Alterar:</f:facet>
<h:commandLink value="Alterar">
<f:setPropertyActionListener target="#{usuarioBean.usuario}"
value="#{usuario}" />
</h:commandLink>
</h:column>

<h:column>
<f:facet name="header">Excluir:</f:facet>
<h:commandLink value="Remover action="#{usuarioBean.remove(usuario)}">
<f:ajax render="@form" />
</h:commandLink>
</h:column>
</h:dataTable>
</fieldset>
</h:form>
</ui:define>
</html>

package br.inf.bluestar.uniblue.aplicacao.util;
import
import
import
import

javax.faces.application.FacesMessage;
javax.faces.context.FacesContext;
javax.validation.ConstraintViolation;
javax.validation.ConstraintViolationException;

public class MensagensUtil {


public static void infoMessage(String message) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(
FacesMessage.SEVERITY_INFO, message, message));
}
public static void errorMessage(String message) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(
FacesMessage.SEVERITY_ERROR, message, message));
}
public static void warnMessage(String message) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(
FacesMessage.SEVERITY_WARN, message, message));
}

public static void mensagensDeValidacao(ConstraintViolationException e) {


for (ConstraintViolation<?> violacao : e.getConstraintViolations()) {
warnMessage(violacao.getMessage());
}
}
}

public Usuario salvarOuAtualizar(Usuario usuario) {


final EntityManager em = obterEntityManagerEIniciarTransacao();
final UsuarioDAO dao = new UsuarioDAO(em);
Usuario atual = null;
try {
atual = dao.salvarOuAtualizar(usuario);
em.getTransaction().commit();
} catch (ConstraintViolationException e) {
em.getTransaction().rollback();
throw e;
} catch (PersistenceException e) {
em.getTransaction().rollback();
throw e;
}
em.close();
return atual;
}

public void grava() {


UsuarioService service = new UsuarioService();
try {
service.salvarOuAtualizar(usuario);
MensagensUtil.infoMessage("Usurio Cadastrado com Sucesso");
} catch (ConstraintViolationException e) {
MensagensUtil.mensagensDeValidacao(e);
} catch (org.hibernate.exception.ConstraintViolationException e) {
MensagensUtil.errorMessage("Login ou endereo de e-mail em uso!");
}

System.out.println(usuario);
usuario = new Usuario();
usuarios = service.buscarTodos();
}

<ui:define name="conteudo">
<h:form>
<h:messages id="mensagens" />
<fieldset>
<legend>Dados do Usurio</legend>
<h:panelGrid columns="2">

Desenvolver a parte visual do site, aplicando os recursos que o professor


disponibilizou s pginas que voc j criou (aluno, professor, disciplina, turma)
Criar o _template.xhtml;
Demarcar onde ser inserido o contedo no template;
Inserir a logo no template;
Inserir mensagens de validao;
Configurar cada uma das pginas das outras entidades - aluno, professor, disciplina,
turma para que seja possvel fazer o templating;
Inserir AJAX para excluir e atualizar as entidades;

No se preocupem, nesse momento com Enuns, Datas e listas! Faam o que j


aprendemos!

palerique@gmail.com

1 - Algum erro de compilao?


2 - Alguma classe para salvar?
3 - A String de conexo na
ConexaoFactory est local?
4 - Clean no Projeto;
5 - Clean no Servidor;
6 - Publish no Servidor;
7 - Restart no Servidor;
8 - CTRL + F5 no Browser.

Das könnte Ihnen auch gefallen