Problema com JSF Primefaces

Então ta :+1:

Mas antes de comprar a licença, verifique com o pessoal da Prime para ver se é isso mesmo, pois o significado de uso comercial e não comercial é outro.

Mas ainda sim, não compre o layout se estiver aprendendo.

@andrebmarinho
E para você, um sistema de relatório colocado na empresa é uso comercial ou não?

Vamos imaginar o seguinte um sistema de relatório e uma dezena de caixa de sapatos sendo colocado numa sapataria. Mas o que terá uso comercial?

O sistema de relatório será para uso da empresa (não comercial). E os sapatos para uso comercial, ou seja foi comprado para comercialização.

Pelo que entendi você considera comercial só o que é venda…Só que qualquer software usado dentro de uma empresa é considerado como uso comercial.

Veja o que você diz: "

"

O que vai determinar como o software é usado , distribuído e identificado é a licença, que esta escrito na licença? Isso varia de acordo com o fabricante.

Vamos nos ater aqui a licença básica do Primefaces, você entende diferente? então me mostre diretamente na licença.

Pra o Primefaces identifica sua licença como duas categorias: basic e extends, na basic você pode criar um software e até cobrar pra um único cliente, então pra critério de identificação por algum motivo eles consideram como uso não-comercial.
Agora Mike se você não concorda com essa nomenclatura deles (Primefaces) vá reclamar com eles.

Eu falei o SIGNIFICADO de USO COMERCIAL e USO NÃO-COMERCIAL apenas.

Pra mim pouco importa a nomenclatura deles, não vou usar o layout mesmo, quem tem que ater a isso é quem vai comprar e ai dei um toque.

Eu só falei aqui o que estava escrito na hora da compra.

Na básica estava escrito uso não-comercial e então falei o que é uso não-comercial.
Na estendida estava escrito uso comercial e então falei o que é uso comercial.

Amigos não to conseguindo resolver meu problema na tela de login… alguém pode me ajudar? Tentei fzr o que o mike disse, mas não deu certo.:confused: queria tbm saber como faz para que quando eu digitar os dados de login e senha ele ver se tem no banco e ir pra outra tela… obg

Cesar,

Você pode fazer isso de diversas formas, inclusive usando um framework chamado Spring Security.

Porém se você esta fazendo um projeto baseado no curso do Sergio Delfino , ele faz de outra forma.

Qual tua duvida? Qual erro esta dando?

O alinhamento vertical e horizontal você pode fazer com o transform do css.
Só o vertical você pode fazer com o código acima, se o panelgrid n tiver pai, é para funcionar.

Se algo não deu certo, posta o código, pois o que eu postei aqui funciona…

O showcase do PrimeFaces tem alguns exemplos do panelgrid, você pode ir la e colocar o código que falei, que vai dar certo.

Sobre autorização você pode fazer com Phase Listener, que já é nativo do JSF e você mexe com código java.

Para começar:
Sabe trazer registro do banco? Se sim, retorna o nome da página desejada para fazer a navegação.
Caso não saiba, estude JDBC.

Taca no google: “guj login Mike”, irá aparecer diversos posts meu sobre login… algum deles tem muita informação.

Edit: caso você queira tentar fazer algo com CSS, eu sugiro que você crie um arquivo html aparte e faça as coisas la, pois o JSF gera um monte de html e css por baixo, ai fica mais difícil de alterar algo caso você não saiba o que esta fazendo.

Andre, meu projeto é diferente do dele, o meu é um “simples” porém bem dificil até agora, sistema de pausa, e tem muitaaa aula no curso do sergio… eu ja assisti varias, anda acontecendo alguns erros.
primeiramente quero destacar o seguinte.

-------------------CÓDIGO COM ICONE E COM BOTÃO DESALINHADO COM INPUTTEXT-----

<?xml version="1.0" encoding="UTF-8" ?>
<h:outputStylesheet library="css" name="file.css" />

<title>Login</title>

</h:head>
<h:body>
<p:growl id=“mensagem” />
<h:form>
<h:panelGrid width=“100%” style=“text-align:center”>

<p:graphicImage library=“imagens” name=“stefanini.jpg” width=“500” />

		<div class="login-box" />
		<h1>Login</h1>

		<!-- Campo de usário -->


		<p:inputText placeholder="Matricula">
			<i class="fa fa-user"></i>
		</p:inputText>

		<!-- Campo da senha -->
		<p:password placeholder="Senha">
			<i class="fa fa-lock"></i>
		</p:password>

	</h:panelGrid>

	<h:panelGrid columns="2" width="100%" style="text-align:center">

		<p:commandLink value="1ª Acesso"
			oncomplete="PF('dlgCadastro').show();"
			actionListener="#{usuarioBean.novo()}"
			update=":formCadastro:painelCadastro">

		</p:commandLink>

		<p:commandButton value="Entrar" />

	</h:panelGrid>

</h:form>

<!--  Tela de cadastro de usuario  -->
<p:dialog header="Cadastro de Usuário" widgetVar="dlgCadastro"
	draggable="false" resizable="false" modal="true">

	<h:form id="formCadastro">
		<h:panelGrid id="painelCadastro">
			<p:inputText value="#{usuarioBean.usuario.nome}" placeholder="Nome"
				size="30" maxlength="55" required="true"
				requiredMessage="Campo nome obrigatório!" />
			<p:inputText value="#{usuarioBean.usuario.matricula}"
				placeholder="Matricula" size="15" maxlength="7" required="true"
				requiredMessage="Campo matricula obrigatório!" />
			<p:password value="#{usuarioBean.usuario.senha}" placeholder="Senha"
				size="15" maxlength="12" required="true"
				requiredMessage="Campo senha obrigatório!" />
		</h:panelGrid>
		<h:panelGrid columns="2">
			<p:commandButton value="Cadastrar"
				actionListener="#{usuarioBean.salvar()}"
				update=":mensagem :formCadastro:painelCadastro" />
			<p:commandButton value="Cancelar"
				oncomplete="PF('dlgCadastro').hide();" />
		</h:panelGrid>
	</h:form>
</p:dialog>

</h:body>

------------------------------ FIM DO CÓDIGO -----------------------------------------

ocorre o seguinte erro quando boto o icone, e na primeira tela sem o icone não da erro nenhum de advertencia.

isso é o primeiro passo de erro que to tendo de vários.

o segundo é que o botão entrar e primeiro acesso estão desalinhados , quero deixar eles todos um do lado do outro sem esse espaço tremendo. e quero dar um espaço entre o icone e o inputtext do usuario e login. procurei vários jeitos e não consegui até agora.

obs: eu não sei usar css e não sei como que posso fazer um arquivo css e ele alterar o css do meu primefaces… vi algumas videoaulas na internet até em ingles ( que não sei muito bem) e não sai do canto ainda.


e em terceiro que posso assistir as aulas do curso do sérgio e ver a forma que ele usa de que assim que eu apertar no command buton entrar ele verificar no banco e ir para a outra pagina, mas por enquanto queria ver esses erro.

me ajuda?:smiley: kkkkkkkk

então mike, eu não sei mexer em css direito e não sei também tipo, como fazer um arquivo em css e fazer com que ele fique no meu primefaces, pq ja tentei usando uma videoaula, mas ele não altera nada.

sobre a autorização e passar para a outra tela, vou ver as videoaulas do sergio como o andre comentou, pq tou um pouco distante dessa parte, mas já queria deixar feito isso, pq como falei no meu comentário aqui em cima, o projeto de ensino dele é diferente do meu.

trazer registro dos banco assim de cabeça não, mas a minha pagina para ver as pausas das pessoas ja esta com dados do banco, e posso rever a aula que ele mostra como “fazer” isso.
vou da uma olhada nesse JDBC

procurei no google como vc falou mas não achei quase muita coisa com o que vc mensinou: “guj login Mike”,

eu tenho um arquivo salvo das duas paginas com elas feita até onde eu gostei…
tentei dar uma alterada pelo css mas não consegui nada.

Escreve: “guj login mike jsf”, ai aparece mais coisas

Pra alinhar o botão e o link de maneira fácil, você pode colocar o botao e o link dentro de um panelgroup, ai os dois ocuparão apenas uma coluna do panelgrid

fiz do jeito que vc falou e nao teve diferença, a não ser que eu tenha que por alguma propriedade… pq primefaces pra mim é um pouco dificil, pq eu olho o showcase lá e não consigo deixar ele igual como ta la, ou me basear hehe… da sempre algum problema.

eu fiz assim

----------------- jeito 1 -----------------------
<h:panelGroup >
<h:panelGrid width=“100%” style=“text-align:center”>

<p:graphicImage library=“imagens” name=“stefanini.jpg” width=“500” />

		<div class="login-box" />
		<h1>Login</h1>

		<!-- Campo de usário -->


		<p:inputText placeholder="Matricula"
			value="#{autenticacaoBean.usuario.matricula}" required="true"
			requiredMessage="O campo matricula é obrigatório!">
			<i class="fa fa-user"></i>
		</p:inputText>

		<!-- Campo da senha -->
		<p:password placeholder="Senha"
			value="#{autenticacaoBean.usuario.senha}" required="true"
			requiredMessage="O campo senha é obrigatório!">
			<i class="fa fa-lock"></i>
		</p:password>

	</h:panelGrid>

	<h:panelGrid columns="2" width="100%" style="text-align:center">

		<p:commandLink value="1ª Acesso"
			oncomplete="PF('dlgCadastro').show();"
			actionListener="#{usuarioBean.novo()}"
			update=":formCadastro:painelCadastro">

		</p:commandLink>

		<p:commandButton value="Entrar" update=":mensagem" actionListener="#{autenticacaoBean.autenticar()}" />

	</h:panelGrid>

</h:panelGroup>

-------------------- jeito 2 --------------------

<h:panelGrid width=“100%” style=“text-align:center”>

<p:graphicImage library=“imagens” name=“stefanini.jpg” width=“500” />

		<div class="login-box" />
		<h1>Login</h1>

		<!-- Campo de usário -->


		<p:inputText placeholder="Matricula"
			value="#{autenticacaoBean.usuario.matricula}" required="true"
			requiredMessage="O campo matricula é obrigatório!">
			<i class="fa fa-user"></i>
		</p:inputText>

		<!-- Campo da senha -->
		<p:password placeholder="Senha"
			value="#{autenticacaoBean.usuario.senha}" required="true"
			requiredMessage="O campo senha é obrigatório!">
			<i class="fa fa-lock"></i>
		</p:password>

	</h:panelGrid>

<h:panelGroup >
<h:panelGrid columns=“2” width=“100%” style=“text-align:center”>

		<p:commandLink value="1ª Acesso"
			oncomplete="PF('dlgCadastro').show();"
			actionListener="#{usuarioBean.novo()}"
			update=":formCadastro:painelCadastro">

		</p:commandLink>

		<p:commandButton value="Entrar" update=":mensagem" actionListener="#{autenticacaoBean.autenticar()}" />

	</h:panelGrid>

</h:panelGroup>

e nenhum dos dois jeitos deu certo?hehe, pode me dizer como faz?:smiley:

O panelgroup vai dentro do panelgrid…

entendi, tentarei aqui, agora estou em um outro dilema… sabe aquela tela de menubar que vc tem quando ta logado e quer editar seu cadastro? como faço para que quando eu clicar em editar cadastro ele saber que se trata do meu usuário? na aula do sergio ele faz usando com a propriedade “var” só que o meu p menu bar, submenu e menuItem nao tem esse atributo e agora? :frowning: help please.

o video que ele ensina como excluir um elemento, só que esta em uma fila e tal…

Boa noite, ultima dúvida antes de ir dormir, estava cadastrando usuários normalmente, ai depois passei para a fase de se logar e ir para outra tela com autenticação.
agora ele autentica, mas na hora de gravar, ele não grava os usuários, pq da erro:
set 25, 2018 2:33:50 AM com.sun.faces.lifecycle.ProcessValidationsPhase execute
ADVERTÊNCIA: /pages/telaPrincipalLogin.xhtml @64,50 value="#{usuarioBean.usuario.nome}": Target Unreachable, ‘usuario’ returned null
javax.el.PropertyNotFoundException: /pages/telaPrincipalLogin.xhtml @64,50 value="#{usuarioBean.usuario.nome}": Target Unreachable, ‘usuario’ returned null
at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:100)
at org.primefaces.util.ComponentUtils.getConverter(ComponentUtils.java:152)
at org.primefaces.renderkit.InputRenderer.getConvertedValue(InputRenderer.java:199)
at javax.faces.component.UIInput.getConvertedValue(UIInput.java:1045)
at javax.faces.component.UIInput.validate(UIInput.java:975)
at javax.faces.component.UIInput.executeValidate(UIInput.java:1248)
at javax.faces.component.UIInput.processValidators(UIInput.java:712)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at javax.faces.component.UIForm.processValidators(UIForm.java:253)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at org.primefaces.component.dialog.Dialog.processValidators(Dialog.java:425)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1195)
at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:673)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1526)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1482)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.el.PropertyNotFoundException: Target Unreachable, ‘usuario’ returned null
at org.apache.el.parser.AstValue.getTarget(AstValue.java:124)
at org.apache.el.parser.AstValue.getType(AstValue.java:58)
at org.apache.el.ValueExpressionImpl.getType(ValueExpressionImpl.java:168)
at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:98)
… 38 more

set 25, 2018 2:33:50 AM com.sun.faces.context.AjaxExceptionHandlerImpl handlePartialResponseError
GRAVE: javax.el.PropertyNotFoundException: /pages/telaPrincipalLogin.xhtml @64,50 value="#{usuarioBean.usuario.nome}": Target Unreachable, ‘usuario’ returned null
at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:100)
at org.primefaces.util.ComponentUtils.getConverter(ComponentUtils.java:152)
at org.primefaces.renderkit.InputRenderer.getConvertedValue(InputRenderer.java:199)
at javax.faces.component.UIInput.getConvertedValue(UIInput.java:1045)
at javax.faces.component.UIInput.validate(UIInput.java:975)
at javax.faces.component.UIInput.executeValidate(UIInput.java:1248)
at javax.faces.component.UIInput.processValidators(UIInput.java:712)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at javax.faces.component.UIForm.processValidators(UIForm.java:253)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at org.primefaces.component.dialog.Dialog.processValidators(Dialog.java:425)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1195)
at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:673)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1526)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1482)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.el.PropertyNotFoundException: Target Unreachable, ‘usuario’ returned null
at org.apache.el.parser.AstValue.getTarget(AstValue.java:124)
at org.apache.el.parser.AstValue.getType(AstValue.java:58)
at org.apache.el.ValueExpressionImpl.getType(ValueExpressionImpl.java:168)
at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:98)
… 38 more


sei que o erro é pq ele ta nulo, mas não entendo pq… se o do professor sergio ta dando certo, apesar de o dele nao ser igual o meu.

segue os meus códigos abaixo.

-------------------------------- tela principal xhtml

<?xml version="1.0" encoding="UTF-8" ?>
<h:outputStylesheet library="css" name="file.css" />

<title>Login</title>

</h:head>
<h:body>
<p:growl id=“mensagem” />
<h:form>
<h:panelGrid width=“100%” style=“text-align:center”>

<p:graphicImage library=“imagens” name=“stefanini.jpg” width=“500” />

		<div class="login-box" />
		<h1>Login</h1>

		<!-- Campo de usário -->


		<p:inputText placeholder="Matricula" maxlength="7"
			value="#{autenticacaoBean.usuario.matricula}" required="true"
			requiredMessage="O campo matricula é obrigatório!">
			
		</p:inputText>

		<!-- Campo da senha -->
		<p:password placeholder="Senha" maxlength="10"
			value="#{autenticacaoBean.usuario.senha}" required="true"
			requiredMessage="O campo senha é obrigatório!">
			
		</p:password>

	</h:panelGrid>

	<h:panelGrid columns="2" width="100%" style="text-align:center">

		<p:commandLink value="1ª Acesso"
			oncomplete="PF('dlgCadastro').show();"
			actionListener="#{usuarioBean.novo()}"
			update=":formCadastro:painelCadastro" />

		<p:commandButton value="Entrar" update=":mensagem"
			actionListener="#{autenticacaoBean.autenticar()}" />

	</h:panelGrid>

</h:form>

<!--  Tela de cadastro de usuario  -->
<p:dialog header="Cadastro de Usuário" widgetVar="dlgCadastro"
	draggable="false" resizable="false" modal="true">

	<h:form id="formCadastro">
		<h:panelGrid id="painelCadastro">
			<p:inputText value="#{usuarioBean.usuario.nome}" placeholder="Nome"
				size="30" maxlength="55" required="true"
				requiredMessage="Campo nome obrigatório!" />
			<p:inputText value="#{usuarioBean.usuario.matricula}"
				placeholder="Matricula" size="15" maxlength="7" required="true"
				requiredMessage="Campo matricula obrigatório!" />
			<p:password value="#{usuarioBean.usuario.senha}" placeholder="Senha"
				size="15" maxlength="12" required="true"
				requiredMessage="Campo senha obrigatório!" />
		</h:panelGrid>
		<h:panelGrid columns="2">
			<p:commandButton value="Cadastrar"
				actionListener="#{usuarioBean.salvar()}"
				update=":mensagem :formCadastro:painelCadastro" />
			<p:commandButton value="Cancelar"
				oncomplete="PF('dlgCadastro').hide();"  />
		</h:panelGrid>
	</h:form>
</p:dialog>

</h:body>

--------------------------------- usuario bean
package br.stefanini.projetopausa.bean;

import java.io.Serializable;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import org.omnifaces.util.Messages;

import br.stefanini.projetopausa.dao.UsuarioDAO;
import br.stefanini.projetopausa.domain.Usuario;

@SuppressWarnings(“serial”)
@ManagedBean
@ViewScoped
public class UsuarioBean implements Serializable {

private Usuario usuario;
private List<Usuario> usuarios;

public Usuario getUsuario() {
	return usuario;
}

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

public List<Usuario> getUsuarios() {
	return usuarios;
}

public void setUsuarios(List<Usuario> usuarios) {
	this.usuarios = usuarios;
}



@PostConstruct
public void listar() {
	try {
		UsuarioDAO usuarioDAO = new UsuarioDAO();
		usuarios = usuarioDAO.listar();
	} catch (RuntimeException erro) {
		Messages.addGlobalError("Ocorreu um erro ao tentar listar o usuario");
		erro.printStackTrace();
	}

}

public void teste() {
	Messages.addGlobalInfo("teste");
	System.out.println("teste");
}

public void novo() {
	usuario = new Usuario();
}

public void salvar() {
	UsuarioDAO usuarioDAO = new UsuarioDAO();
	usuarioDAO.salvar(usuario);
	Messages.addFlashGlobalInfo("Usuario salvo com sucesso.");
}

}
-------------------------------------- usuario class java
package br.stefanini.projetopausa.domain;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Transient;

@Entity
public class Usuario {

@Id
@Column(length = 7)
private String matricula;

@Column(length = 32, nullable = false)
private String senha;

@Transient
private String senhaCriptografada;

@Column(length = 55, nullable = false)
private String nome;

@Column(nullable = false)
private boolean status = false;

public boolean isStatus() {
	return status;
}

public void setStatus(boolean status) {
	this.status = status;
}

public String getMatricula() {
	return matricula;
}

public void setMatricula(String matricula) {
	this.matricula = matricula;
}

public String getSenha() {
	return senha;
}

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



public String getSenhaCriptografada() {
	return senhaCriptografada;
}

public void setSenhaCriptografada(String senhaCriptografada) {
	this.senhaCriptografada = senhaCriptografada;
}

public String getNome() {
	return nome;
}

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

}

--------------------------------------autentica bean
package br.stefanini.projetopausa.bean;

import java.io.IOException;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import org.omnifaces.util.Faces;
import org.omnifaces.util.Messages;

import br.stefanini.projetopausa.dao.UsuarioDAO;
import br.stefanini.projetopausa.domain.Usuario;

@ManagedBean
@SessionScoped
public class AutenticacaoBean {

private Usuario usuarioLogado;

private Usuario usuario;

public Usuario getUsuario() {
	return usuario;
}

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

@PostConstruct
public void novo() {
	usuario = new Usuario();
}

public Usuario getUsuarioLogado() {
	return usuarioLogado;
}

public void setUsuarioLogado(Usuario usuarioLogado) {
	this.usuarioLogado = usuarioLogado;
}

public void autenticar() {

	try {
		UsuarioDAO usuarioDAO = new UsuarioDAO();
		usuarioLogado = usuarioDAO.autenticar(usuario.getSenha(), usuario.getMatricula());

		if (usuarioLogado == null) {
			Messages.addGlobalError("Matricula ou senha incorretos");
			return;
		}

		Faces.redirect("./pages/telaSecundariaPausa.xhtml");
	} catch (IOException e) {
		e.printStackTrace();
		Messages.addGlobalError(e.getMessage());
	}
}

}

-----------------------------------usuarioDao
package br.stefanini.projetopausa.dao;

import java.util.List;

import org.apache.shiro.crypto.hash.SimpleHash;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.Restrictions;

import br.stefanini.projetopausa.domain.Usuario;
import br.stefanini.projetopausa.util.HibernateUtil;

public class UsuarioDAO {

public void salvar(Usuario usuario) {
	Session sessao = HibernateUtil.getFabricaDeSessoes().openSession();
	Transaction transacao = null;

	try {
		transacao = sessao.beginTransaction();
		sessao.save(usuario);
		transacao.commit();
	} catch (RuntimeException erro) {
		if (transacao != null) {
			transacao.rollback();
		}
		throw erro;
	} finally {
		sessao.close();
	}
}

@SuppressWarnings("unchecked")
public List<Usuario> listar() {
	Session sessao = HibernateUtil.getFabricaDeSessoes().openSession();
	try {
		Criteria consulta = sessao.createCriteria(Usuario.class);
		List<Usuario> resultado = consulta.list();
		return resultado;
	} catch (RuntimeException erro) {
		throw erro;
	} finally {
		sessao.close();
	}
}

// @SuppressWarnings("unchecked")
public Usuario buscar(String matricula) {
	Session sessao = HibernateUtil.getFabricaDeSessoes().openSession();
	try {
		Criteria consulta = sessao.createCriteria(Usuario.class);
		consulta.add(Restrictions.idEq(matricula));
		Usuario resultado = (Usuario) consulta.uniqueResult();
		return resultado;
	} catch (RuntimeException erro) {
		throw erro;
	} finally {
		sessao.close();
	}
}

public void excluir(Usuario usuario) {
	Session sessao = HibernateUtil.getFabricaDeSessoes().openSession();
	Transaction transacao = null;

	try {
		transacao = sessao.beginTransaction();
		sessao.delete(usuario);
		transacao.commit();
	} catch (RuntimeException erro) {
		if (transacao != null) {
			transacao.rollback();
		}
		throw erro;
	} finally {
		sessao.close();
	}
}

public void editar(Usuario usuario) {
	Session sessao = HibernateUtil.getFabricaDeSessoes().openSession();
	Transaction transacao = null;

	try {
		transacao = sessao.beginTransaction();
		sessao.update(usuario);
		transacao.commit();
	} catch (RuntimeException erro) {
		if (transacao != null) {
			transacao.rollback();
		}
		throw erro;
	} finally {
		sessao.close();
	}
}

public Usuario autenticar(String senha, String matricula) {
	Session sessao = HibernateUtil.getFabricaDeSessoes().openSession();

	try {
		Criteria consulta = sessao.createCriteria(Usuario.class);
		
		consulta.add(Restrictions.eq("matricula", matricula));
		
		SimpleHash hash = new SimpleHash("md5", senha);
		consulta.add(Restrictions.eq("senha", hash.toHex()));
		
		
		Usuario resultado = (Usuario) consulta.uniqueResult();
		return resultado;
	} catch (RuntimeException erro) {
		throw erro;
	} finally {
		sessao.clear();
	}

}

}
---------------------segunda tela

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

<h:body>
<p:growl id=“mensagem” />
<h:form>

	<p:graphicImage library="imagens" name="stefanini.jpg" width="180"
		styleClass="imagemCentralizada" />


	<p:menubar>
		<p:submenu label="#{autenticacaoBean.usuarioLogado.nome}">
			<p:menuitem value="Registrar pausa"
				oncomplete="PF('dlgPausa').show();" icon="ui-icon-pause" />
			<p:menuitem value="Editar cadastro"
				oncomplete="PF('dlgEditarCadastro').show();" icon="ui-icon-pencil"
				update=":mensagem" />
				
			<p:menuitem value="Atualizar" icon="ui-icon-refresh" />
			<p:menuitem value="Sobre" icon="ui-icon-info" />

		</p:submenu>

		<f:facet name="options">

			<p:commandButton type="button" value="Sair" icon="ui-icon-extlink" />

		</f:facet>

	</p:menubar>

	<p:dataTable value="#{usuarioBean.usuarios}" var="usuario">

		<p:column headerText="Usuário" sortBy="#{usuario.nome}"
			filterBy="#{usuario.nome}">
			<h:outputText value="#{usuario.nome}" />
		</p:column>

		<p:column headerText="Status" sortBy="#{usuario.status}">
			<h:outputText value="#{usuario.status}" />
		</p:column>


	</p:dataTable>


</h:form>


<!-- Dialogo de registrar Pausa -->
<p:dialog header="Registrar pausa" widgetVar="dlgPausa"
	draggable="false" resizable="false" modal="true">
	<h:form>

		<h:panelGrid>
			<p:inputText placeholder="Matricula" />
			<p:selectOneMenu>
				<f:selectItem itemValue="Pausa 10" itemLabel="Pausa 10" />
				<f:selectItem itemValue="Intervalo" itemLabel="Intervalo" />
			</p:selectOneMenu>
		</h:panelGrid>

	</h:form>
</p:dialog>

<!-- Dialogo de editar cadastro -->
<p:dialog header="Registrar pausa" widgetVar="dlgEditarCadastro"
	draggable="false" resizable="false" modal="true">
	<h:form>

		<h:panelGrid>
			<p:inputText placeholder="Matricula" />
			<p:selectOneMenu>
				<f:selectItem itemValue="Pausa 10" itemLabel="Pausa 10" />
				<f:selectItem itemValue="Intervalo" itemLabel="Intervalo" />
			</p:selectOneMenu>
		</h:panelGrid>

	</h:form>
</p:dialog>

</h:body>

vlw galera, por favor se possível e souberem que eu tentei de tudo desde as 22 horas de ontem.

Você não instancia o usuário em nenhum momento na hora do login

[quote=“Cesar_Ryan, post:57, topic:375320”]
<p:commandLink value="1ª Acesso"
oncomplete="PF(‘dlgCadastro’).show();“
actionListener=”#{usuarioBean.novo()}“
update=”:formCadastro:
[/.

Então tai o código em que eu chamo o método novo que estância a classe dentro do bean então como que não da certo? E o exemplo do YouTube da vídeo aula do Sérgio é do mesmo jeito e o dele da certo… tem algo a mais nisso??

Que eu saiba você quer logar e não ir pro primeiro acesso

então Mike quando ele clicar no primeiro acesso vai abrir um dialogo por cima da tela e nele eu vou gravar o usuario no banco de dados, que é o cadastro. só que ele ta retornando usuario nulo, pq o metodo novo do actionListener é como se ele nao existisse ou nao estivesse sido chamado, sendo que no video ele mostra da mesma forma e da certo… gostaria de ver o video para vc entender? pq se eu por ele como postconstruct blz ele funciona, só que eu nao quero ele como isso.