acabei resolvendo o problema de logar, mas foi pq refiz o código todo e deu certo, então nao achei o erro. porém estou com outro problema… como faço para pegar uma pessoa logada e fazer com que quando eu clicar no botão de registrar pausa ele troque o atributo status que por padrão deixei 0 ( false) ir para true?
pela aula do sergio to tentando primeiro pegar uma pessoa logada e exibir na tela pelo menos o nome para saber se funcionou que ai depois vou para a parte de implementar o metodo. Pode me ajudar?
segue o código da tela secundaria, que é a tela após a pessoa logar.
<?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" />
<!-- Barra de menu do usuario -->
<p:menubar>
<p:submenu label="#{autenticacaoBean.usuarioLogado.nome}">
<p:menuitem value="Registrar pausa"
oncomplete="PF('dlgPausa').show();" icon="ui-icon-pause"
actionListener="#{usuarioBean.excluir}" update=":mensagem">
<f:attribute name="usuarioSelecionado" value="#{usuario}" />
</p:menuitem>
<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>
<!-- Barra de menu do usuario -->
<!-- Tabela de usuarios -->
<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>
<!-- Tabela de usuarios -->
</h:form>
<!-- Dialogo de registrar Pausa -->
<p:dialog header="Registrar pausa" widgetVar="dlgPausa"
draggable="false" resizable="false" modal="true">
<h:form>
<p:inputText placeholder="Matricula" />
<h:panelGrid columns="2">
<p:selectOneMenu>
<f:selectItem itemValue="Pausa 10" itemLabel="Pausa 10" />
<f:selectItem itemValue="Intervalo" itemLabel="Intervalo" />
</p:selectOneMenu>
<p:commandButton icon="ui-icon-check" />
</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>
código do usuarioBean…
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 javax.faces.event.ActionEvent;
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 os usuarios");
erro.printStackTrace();
}
}
public void novo() {
usuario = new Usuario();
}
public void salvar() {
try {
UsuarioDAO usuarioDAO = new UsuarioDAO();
usuarioDAO.salvar(usuario);
novo();
Messages.addFlashGlobalInfo("Usuario salvo com sucesso.");
} catch (RuntimeException erro) {
Messages.addGlobalError("Ocorreu um erro ao salvar o usuario.");
erro.printStackTrace();
}
}
public void excluir(ActionEvent evento) {
usuario = (Usuario) evento.getComponent().getAttributes().get("usuarioSelecionado");
Messages.addGlobalInfo("Nome"+ usuario.getNome());
}
}
videoaula do sergio para excluir o cadastro, mas é o mesmo principio para o meu metodo de registrar pausa ( eu acho )
obs: lembrando que o metodo ta com nome de excluir mais na vdd eu quero que ele registre a pausa, porém fiz igual o da aula para nao ter erro.
o log do console após apertar no menubar e escolher o menuItem Registrar pausa.
ADVERTÊNCIA: /pages/telaSecundariaPausa.xhtml @26,65 actionListener="#{usuarioBean.excluir}": java.lang.NullPointerException
javax.el.ELException: /pages/telaSecundariaPausa.xhtml @26,65 actionListener="#{usuarioBean.excluir}": java.lang.NullPointerException
at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:111)
at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:147)
at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:814)
at javax.faces.component.UICommand.broadcast(UICommand.java:300)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
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: java.lang.NullPointerException
at br.stefanini.projetopausa.bean.UsuarioBean.excluir(UsuarioBean.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.el.parser.AstValue.invoke(AstValue.java:247)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)
at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
… 31 more
set 27, 2018 12:28:37 AM com.sun.faces.context.AjaxExceptionHandlerImpl handlePartialResponseError
GRAVE: java.lang.NullPointerException
at br.stefanini.projetopausa.bean.UsuarioBean.excluir(UsuarioBean.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.el.parser.AstValue.invoke(AstValue.java:247)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)
at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:147)
at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:814)
at javax.faces.component.UICommand.broadcast(UICommand.java:300)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
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)
o erro é de nullpointer exception no caso ele nao ta pegando o usuário logado, eu ja fiz o teste pegando a tela principal me logando e apertar no menu bar depois no menuItem e o erro é o mesmo.