Então, eu respondi essa duvida (ou pelo menos acho que respondi) pra alguem ontem, aqui no forum, mas vamos lá…
O modal é “renderizado” quando a página é carregada, então os dados do bean não vão estar no modal a menos que você dê um reRender nos componentes internos a ele.
No botão que está chamando o modal, coloque a propriedade reRender=“id_do_painel”, e dentro do modal, envolvendo os componentes dele, coloque um painel <14j:outputPanel id=“id_do_painel”> </a4j:outputPanel> …
Isso deve resolver, apesar de não ser a unica solução…
tenta ae…
[]'s
E
eduardocsanto
Cara você tem duas opções ou deixa o mbean como session ou usa o keepalive do rich faces.
Galera. tenho no menu rich:contextMenu uma acao de visualizacao que vai ate a controller fazer uma consulta. Problema 1: O modal não fica fixo na tela, ou seja, assim que exibe na tela ele fecha sozinho. Problema 2: ele sempre exibe o resultado da pesquisa anterior.
Srs estou com problema usando o ModalPanel (O modal que criei e um formuario de pesquisa). O problema é o seguinte:
Quando clico no commandButton nada acontece simplesmente fica “inativo”. ai substitui pelo a4j:commandLink ai acao de submit funcionou mas nao chama o metodo na minha controller, ou seja , as acções de submite no meu ModalPanel nao estao funcionando. o que posso fazer??
Abaixo segue o codigo
[quote]
<?xmlversion="1.0"encoding="ISO-8859-1"?><!DOCTYPEhtmlPUBLIC"-//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:ui="http://java.sun.com/jsf/facelets"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"><ui:compositiontemplate="/templates/principal.xhtml"><ui:definename="body"><a4j:keepAlivebeanName="BolsaAluno"/><ui:definename="title"><f:loadBundlebasename="br.unama.kathedrafinanceiro.bolsaaluno.controller.messages"var="msg"/>#{msg.title}-#{msg.title_altera}</ui:define><h:panelGridcolumns="2"><h:form><h:panelGridcolumns="2"><f:facetname="header"><h:messagesstyleClass="TextoErro"/></f:facet><h:outputTextvalue="#{msg.label_matricula}"styleClass="TextoNegrito"/><h:panelGridcolumns="3"><h:inputTextid="matricula"value="#{BolsaAluno.bean.alunoBean.matricula}"styleClass="caixaTextoNaoEdit"size="20"readonly="true"/><h:outputTextvalue=" - "/><h:inputTextid="nome"value="#{BolsaAluno.bean.alunoBean.nome}"readonly="true"size="90"styleClass="caixaTextoNaoEdit"/><!--ChamadaparaomodalatravesdocommandButton--><a4j:commandButtonid="link"value="..."><rich:componentControlattachTo="link"event="onclick"for="panel"operation="show"/><a4j:supportevent="onclick"onsubmit="true"/></a4j:commandButton></h:panelGrid><h:outputTextvalue="#{msg.label_tipoBolsa}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><h:selectOneMenuvalue="#{BolsaAluno.bean.bolsaBean.tipoBolsaBean.idTpBolsa}"valueChangeListener="#{BolsaAluno.atualizarComboBolsa}"immediate="true"onchange="submit()"><f:selectItemsvalue="#{BolsaAluno.comboTipoBolsa}"/></h:selectOneMenu></h:panelGrid><h:outputTextvalue="#{msg.label_bolsa}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><h:selectOneMenuvalue="#{BolsaAluno.bean.bolsaBean.idBolsa}"><f:selectItemsvalue="#{BolsaAluno.comboBolsa}"/></h:selectOneMenu></h:panelGrid><h:outputTextvalue="#{msg.label_numBolsa}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><h:inputTextid="numBolsa"value="#{BolsaAluno.bean.numBolsa}"styleClass="caixaTextoNaoEdit"size="5"readonly="true"/></h:panelGrid><h:outputTextvalue="#{msg.label_percValor}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><h:selectOneMenuvalue="#{BolsaAluno.bean.percValor}"><f:selectItemitemValue=""/><f:selectItemitemLabel="Valor"itemValue="V"/><f:selectItemitemLabel="Percentual"itemValue="P"/></h:selectOneMenu></h:panelGrid><h:outputTextvalue="#{msg.label_valor}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><h:inputTextid="valor"value="#{BolsaAluno.bean.valor}"/></h:panelGrid><h:outputTextvalue="#{msg.label_dtInicioBolsa}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><rich:calendarid="dtInicioBolsa"value="#{BolsaAluno.bean.dtInicioBolsa}"datePattern="dd/MM/yyyy"popup="true"enableManualInput="true"></rich:calendar></h:panelGrid><h:outputTextvalue="#{msg.label_dtFimBolsa}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><rich:calendarid="dtFimBolsa"value="#{BolsaAluno.bean.dtFimBolsa}"datePattern="dd/MM/yyyy"popup="true"enableManualInput="true"></rich:calendar></h:panelGrid><h:outputTextvalue="#{msg.label_situacaoBolsa}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><h:selectOneMenuvalue="#{BolsaAluno.bean.situacaoBolsa}"><f:selectItemitemValue=""/><f:selectItemitemLabel="Ativa"itemValue="A"/><f:selectItemitemLabel="Desativada"itemValue="C"/></h:selectOneMenu></h:panelGrid><h:outputTextvalue="#{msg.label_motivo}"styleClass="TextoNegrito"/><h:panelGridcolumns="1"><h:selectOneMenuvalue="#{BolsaAluno.bean.motivo}"><f:selectItemitemValue=""/><f:selectItemitemLabel="Encerrada Normalmente"itemValue="E"/><f:selectItemitemLabel="Falta Repasse"itemValue="F"/></h:selectOneMenu></h:panelGrid></h:panelGrid><h:panelGridcolumns="2"><h:commandButtonaction="#{BolsaAluno.inserirSalvar}"value="#{msg.label_botao_gravar}"style=" width : 70px;"/><h:commandButtonaction="#{BolsaAluno.voltar}"value="#{msg.label_botao_cancelar}"onchange="submit()"immediate="true"style=" width : 70px;"/></h:panelGrid><!--MODALPANEL--><rich:modalPanelid="panel"minHeight="178"minWidth="600"height="100"width="500"zindex="2000"><f:facetname="header"><h:panelGroup><h:outputTextvalue="Pesquisar Aluno"></h:outputText></h:panelGroup></f:facet><f:facetname="controls"><h:panelGroup><h:graphicImagevalue="/pages/imagens/fecha.gif"style="cursor:pointer"id="hidelink"/><rich:componentControlfor="panel"attachTo="hidelink"operation="hide"event="onclick"/></h:panelGroup></f:facet><a4j:formid="pesquisaForm"><h:panelGridcolumns="4"width="820"><h:panelGroup><fieldsettitle="Pesquisa"style="width: 450px;"><legend><h:outputTextvalue="Buscar"styleClass="TextoNegrito"/></legend><h:selectOneMenuid="rb_consultapor"value="#{BolsaAluno.opcao}"><a4j:supportevent="onclick"reRender="listagem"/><f:selectItemid="op_matricula"itemValue="MATRICULA"itemLabel="Matrícula"/><f:selectItemid="op_nome"itemValue="NOME"itemLabel="Nome"/></h:selectOneMenu><h:inputTextid="txtbusca"value="#{BolsaAluno.txtBusca}"style=" width : 216px;margin-right:30px"/><!--AQUIOPROBLEMADESUBMITE--><a4j:commandButtonreRender="panel"id="btnpesquisa"action="#{BolsaAluno.pesquisarAluno}"value="Pesquisar"/></fieldset></h:panelGroup></h:panelGrid></a4j:form></rich:modalPanel></h:form></h:panelGrid></ui:define></ui:composition></html>seguepartedaminhacontroollerrquetemometodoqueprecisochamar.publicStringpesquisarAluno(){System.out.println("Chamada do Metodo pesquisarAluno linha 142");System.out.println("txtBusca: "+txtBusca);lista=null;if(opcao.isEmpty()){registrarMensagemErro("sem parametros nao há pesquisa");}else{Opcoesop=Opcoes.valueOf(opcao);switch(op){caseMATRICULA:// Um objeto da classe Pattern contém a expressão regular desejada// que será usada em //// uma comparação. Já um objeto da classe Matcher contém os métodos// que validarão a string//// String, dada uma expressão regular. ////apenas caracteres de zero a 9 e podem ocorrer mais vezes Patternpadrao=Pattern.compile("[0-9]+");Matcherpesquisa=padrao.matcher(txtBusca);if(pesquisa.matches()){alunobean.setNome(null);alunobean.setMatricula(txtBusca);List<AlunoBean>resultquery=dao.findByAluno(alunobean);nenhumregistro=resultquery.isEmpty()?true:false;listaAluno=newListDataModel(resultquery);if(resultquery.isEmpty()){registrarMensagemErro("Não foram encontrados Resultados para sua pesquisa!");}}else{registrarMensagemErro("Você selecionou código Portanto digite Apenas numeros");}break;caseNOME://apenas caracteres entre a-z e A-Z e podem se repetirpadrao=Pattern.compile("[a-zA-Z]+");pesquisa=padrao.matcher(txtBusca);if(pesquisa.matches()){alunobean.setMatricula(null);alunobean.setNome(txtBusca);List<AlunoBean>resultquery=dao.findByAluno(alunobean);nenhumregistro=resultquery.isEmpty()?true:false;listaAluno=newListDataModel(resultquery);if(resultquery.isEmpty()){registrarMensagemErro("Não foram encontrados Resultados para sua pesquisa!");}}else{registrarMensagemErro("Não foram encontrados Resultados para sua pesquisa!");}break;}}txtBusca="";return"incluirAluno";}