Bom dia pessoal, estou com um problema,
meu commandbutton não está renderizando como eu queria.
Tenho um botão logar, ao clicar nele manda um rerender na bean, e se estiver errado era para aparecer um painel, mas não está aparecendo, eu preciso da F5 na página ai sim aparece o painel, alguem pode ajuda, segue os codigos do faces-config e da página
<?xml version="1.0" encoding="UTF-8"?>
<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
version="1.2">
<application>
<view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
</application>
<navigation-rule>
<from-view-id>/pages/pedir-relatorio.xhtml</from-view-id>
<navigation-case>
<from-outcome>erro</from-outcome>
<to-view-id>/pages/erro-preenchimento.jsf</to-view-id>
</navigation-case>
</navigation-rule>
<managed-bean>
<managed-bean-name>relatorio</managed-bean-name>
<managed-bean-class>br.com.bean.relatorioBean</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>loginBackingBean</managed-bean-name>
<managed-bean-class>br.com.backingBean.UsuarioBB</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<converter>
<converter-id>relatorioConverter</converter-id>
<converter-class>br.com.relatorio.control.Converter</converter-class>
</converter>
</faces-config>
<?xml version="1.0" encoding="iso-8859-1"?>
<!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:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:rich="http://richfaces.org/rich"
xmlns:a4j="http://richfaces.org/a4j">
<ui:composition template="../template/template.xhtml">
<ui:define name="titulo">Login</ui:define>
<ui:define name="topo">
<f:loadBundle var="msg" basename="br.com.bundle.messages" />
<h:graphicImage
url="#{pageContext.servletContext.contextPath}/images/LogoAttende.jpg" />
<f:verbatim>
<br />
</f:verbatim>
<h:outputText value="#{msg.pagina_login_titulo}"
title="#{msg.pagina_login_titulo}" />
</ui:define>
<ui:define name="conteudo">
<h:form>
<a4j:keepAlive beanName="loginBackingBean" />
<rich:panel styleClass="login" style="">
<f:facet name="header">
<h:outputText value="#{msg.pagina_login_header}" />
</f:facet>
<h:panelGrid columns="2">
<h:outputText value="#{msg.pagina_login_usuario}" />
<h:inputText value="#{loginBackingBean.usuario.login}" size="30"
styleClass="camposLogin" />
<h:outputText value="#{msg.pagina_login_senha}" />
<h:inputSecret value="#{loginBackingBean.usuario.senha}" size="30"
styleClass="camposLogin" />
</h:panelGrid>
<a4j:commandButton reRender="mensagemErro" action="#{loginBackingBean.efetuaLogin}"
value="#{msg.pagina_login_botao_logar}"/>
</rich:panel>
</h:form>
<a4j:status>
<f:facet name="start">
<h:graphicImage value="#{pageContext.servletContext.contextPath}/images/carregando.gif" />
</f:facet>
</a4j:status>
<rich:panel id="mensagemErro" rendered="#{loginBackingBean.msgErro}"
styleClass="msgErro">
<h:panelGrid columns="2">
<h:graphicImage value="#{pageContext.servletContext.contextPath}/images/loginErro.png" />
<h:outputText value="#{msg.pagina_login_incorreto}" />
</h:panelGrid>
</rich:panel>
</ui:define>
</ui:composition>
</html>
public String efetuaLogin() throws IOException {
BuscarUsuario login = new BuscarUsuario();
this.usuario = login.buscaPorUsuario(this.usuario);
if (this.usuario != null) {
this.usuario.setLogado(true);
//if (this.usuario.getLogin().equals("diego") && this.usuario.getSenha().equals("123")) {
// this.usuario.setLogado(true);
//Utilitario.setHttpSessionObject("usuario", this.usuario);
//facesContext = FacesContext.getCurrentInstance();
request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
HttpServletResponse rp = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
//HttpServletRequest rq = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
session = request.getSession(false);
session.setAttribute("usuario", this.usuario);
this.msgErro = false;
rp.sendRedirect(request.getContextPath() + "/pages/pedir-relatorio.jsf");
} else {
this.msgErro = true;
this.usuario = new Usuario();
}
return "login";
}