Estou usando um modalPanel para renderizar um dataTable de CEPs, cada CEP é um a4j:commandLink que popula e faz um reRender nos componentes da página principal, mas quando eu clico em salvar, ele não carrega os dados do CEP. Já tentei usar a4j:keepAlive mas não fez muito efeito.
Alguém já fez isso e sabe como resolver meu problema?
coloca os componentes que vc quer renderizar dentro do rich:panel e depois faz o reRender apenas nessa rich:panel
rimolive
ok, eu fiz isso e não funcionou…
Pra ficar mais fácil, segue abaixo o meu código:
cadEmpresa.xhtml:
<?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"><htmlxmlns="http://www.w3.org/1999/xhtml"xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:rich="http://richfaces.org/rich"xmlns:a4j="http://richfaces.org/a4j"xmlns:ui="http://java.sun.com/jsf/facelets"><f:view><ui:compositiontemplate="/layout/layout1.xhtml"><ui:definename="body"><a4j:formid="empresaForm"><a4j:keepAliveajaxOnly="true"beanName="empresaBean"/><a4j:includeviewId="/pages/panel.xhtml"/><rich:panelid="empresaPanel"style="height: 385px;"><h:inputHiddenid="formEmpresaId"value="#{empresaBean.empresa.id}"/><h:panelGridcolumns="2"><h:outputTextvalue="Nome:"/><h:inputTextsize="30"value="#{empresaBean.empresa.nome}"/><h:outputTextvalue="Razão Social:"/><h:inputTextsize="50"value="#{empresaBean.empresa.razaoSocial}"/><h:outputTextvalue="CNPJ:"/><h:inputTextsize="15"value="#{empresaBean.empresa.cnpj}"/><h:outputTextvalue="Inscrição Estadual:"/><h:inputTextsize="15"value="#{empresaBean.empresa.inscricaoEstadual}"/><h:outputTextvalue="Endereço:"/><h:panelGroupid="endereco1"><h:inputTextid="logradouro"value="#{empresaBean.empresa.endereco.logradouro}"size="50"readonly="true"/> <h:graphicImagevalue="/images/viewmag.png"style="cursor: pointer;"onclick="javascript:Richfaces.showModalPanel('cepResPanel');"/></h:panelGroup><h:outputTextvalue="CEP: "/><h:panelGroupid="endereco2"><h:inputTextid="cep"value="#{empresaBean.empresa.endereco.cep}"size="10"readonly="true"/> <h:outputTextvalue="Número: "/> <h:inputTextvalue="#{empresaBean.empresa.numero}"size="10"/> <h:outputTextvalue="Complemento: "/> <h:inputTextvalue="#{empresaBean.empresa.complemento}"size="10"/></h:panelGroup><h:outputTextvalue="Bairro: "/><h:inputTextid="bairro"value="#{empresaBean.empresa.endereco.bairro}"size="30"readonly="true"/><h:outputTextvalue="Cidade: "/><h:panelGroupid="endereco3"><h:inputTextid="cidade"value="#{empresaBean.empresa.endereco.cidade}"size="30"readonly="true"/> <h:outputTextvalue="Estado: "/> <h:inputTextid="estado"value="#{empresaBean.empresa.endereco.estado}"size="5"readonly="true"/></h:panelGroup></h:panelGrid><f:verbatim><br/><br/></f:verbatim><h:commandButtonid="buttonCadastrarSetor"action="#{empresaBean.cadastrarEmpresa}"value="OK"/><h:commandButtonid="buttonCancelar"action="#{empresaBean.listarEmpresas}"value="Cancelar"immediate="true"/></rich:panel></a4j:form></ui:define></ui:composition></f:view></html>
panel.xhtml
<?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"><ui:compositionxmlns="http://www.w3.org/1999/xhtml"xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:a4j="http://richfaces.org/a4j"xmlns:rich="http://richfaces.org/rich"xmlns:ui="http://java.sun.com/jsf/facelets"><rich:modalPanelid="cepResPanel"width="475"height="275"><f:facetname="header"><h:outputTextvalue="Pesquisa de CEP"/></f:facet><f:facetname="controls"><h:commandLinkvalue="X"style="font-face: normal;"onclick="Richfaces.hideModalPanel('cepResPanel');"immediate="true"/></f:facet><rich:datascrolleralign="left"for="tableEndereco"maxPages="20"/><rich:spacerheight="30"/><rich:dataTablewidth="450px"id="tableEndereco"rows="5"value="#{enderecoBean.listEndereco}"var="endereco"><rich:column><f:facetname="header"><h:outputTextstyleClass="headerText"value="CEP"/></f:facet><a4j:commandLinkid="selecionaCepLink"value="#{endereco.cep}"reRender="empresaPanel"onclick="Richfaces.hideModalPanel('cepResPanel');"limitToList="true"><a4j:actionparamid="paramCep"name="cep"value="#{endereco.cep}"assignTo="#{empresaBean.empresa.endereco.cep}"/><a4j:actionparamid="paramLogradouro"name="logradouro"value="#{endereco.logradouro}"assignTo="#{empresaBean.empresa.endereco.logradouro}"/><a4j:actionparamid="paramBairro"name="bairro"value="#{endereco.bairro}"assignTo="#{empresaBean.empresa.endereco.bairro}"/><a4j:actionparamid="paramCidade"name="cidade"value="#{endereco.cidade}"assignTo="#{empresaBean.empresa.endereco.cidade}"/><a4j:actionparamid="paramEstado"name="estado"value="#{endereco.estado}"assignTo="#{empresaBean.empresa.endereco.estado}"/></a4j:commandLink></rich:column><rich:column><f:facetname="header"><h:outputTextstyleClass="headerText"value="Logradouro"/></f:facet><h:outputTextstyleClass="headerText"value="#{endereco.logradouro}"/></rich:column><rich:column><f:facetname="header"><h:outputTextstyleClass="headerText"value="Bairro"/></f:facet><h:outputTextstyleClass="headerText"value="#{endereco.bairro}"/></rich:column><rich:column><f:facetname="header"><h:outputTextstyleClass="headerText"value="Cidade"/></f:facet><h:outputTextstyleClass="headerText"value="#{endereco.cidade}"/></rich:column><rich:column><f:facetname="header"><h:outputTextstyleClass="headerText"value="Estado"/></f:facet><h:outputTextstyleClass="headerText"value="#{endereco.estado}"/></rich:column></rich:dataTable></rich:modalPanel></ui:composition>