[RESOLVIDO] <a4j:support reRender=""> Não estão funcionando
87 respostas
E
EuclidesFilizola
Bom dia pessoal,
andei lendo varios post e na maioria dizia que se vc quer ter um render dinamico, vc precisa renderizar o componente pai daquele componente a ser renderizando. Pensando nessa linha de raciocinio, eu estou tentando renderizar um panelgroup e n consegui. Tentei também com um a4j:outPanel e também não consegui. abaixo o código.
public void setaTrue(ActionEvent evt){
externo = true;
}
E
EuclidesFilizola
Não funfou não mano. =/
G
gomesrod
Você só pode fazer reRender em um componente que inicialmente está renderizado.
Ele precisa existir no HTML original (mesmo que seja um Panel vazio) para que as chamadas Ajax modifiquem o conteúdo.
A solução é criar um panel group PAI do painel_orgao_externo, sem o atributo rendered.
<h:panelGroup id="id_do_painel_pai">
<h:panelGroup id="painel_orgao_externo" rendered="#{movimentacaoMBean.externo}">
...
</h:panelGroup>
</h:panelGroup>
Aí o componente Ajax faz reRender no id_do_painel_pai
Não sei se fui bem claro, qualquer coisa é só perguntar
O panelGroup tem algum bug ou alguma definição do Faces, que desconheço, no "rendered" dele, quanto à a4j.
Até funciona, na primeira renderização. Mas quando manda renderizar novamente, via a4j, ele não responde.
Coloca as condições do rendered no outputLabel e no selectOneMenu e continua com com o reRender do a4j:support apontando para o "painel_orgao_externo".
Abraço
Edit: também precisa acrescentar um método no actionListener do a4j:support, que vai setar "externo" para true ou false, de acordo à necessidade.
R
raf4ever
vc precisa de um actionListener no a4j:support
senão,como vc vai setar a variável ‘externo’ para true?
O que está acontecendo é o seguinte, primeiro a sua pagina é montada sem o componente ‘painel_orgao_externo’ pois está com redered=false. Até ai tudo bem;
Então tu faz a modificação no checkbox e envia a requisição ajax, essa requisição ajax ira tentar dar um reRender no componente “painel_orgao_externo”, mas ele não existe(pq não foi renderizado) e ai é que encontra o problema, então tu tem que dar um reRender em um componente superior a ele, que ja tenha sido renderizado anteriormente.
E
EuclidesFilizola
fiz desta forma, e continua sem funcionar, ou seja, ao clicar no selectbox, nada acontece.
public void setaTrue(ActionEvent evt){
this.setExterno(true);
}
E
EuclidesFilizola
debugando, ele não entra no método “setatrue” como falou o rafael.
alguem saberia me dizer o porquê ?
L
L.Bach
Repara que tu mandou renderizar um “painel_orgao_pai” e ele não existe!
No reRender tem que estar “painel_orgao_externo”.
R
raf4ever
aqui na minha maquina esse teu codigo ta funcionando…
debugou? tá entrando no setaTrue?
E
EuclidesFilizola
L.Bach:
Repara que tu mandou renderizar um “painel_orgao_pai” e ele não existe!
No reRender tem que estar “painel_orgao_externo”.
o painel orgao pai, está acima do orgao externo, por isso me indicaram reRender quem já foi renderizado na pagina, isso significa que, qndo eu entro nesta página, ele já traz o primeiro painel renderizado, o painel orgao pai. e o orgao externo, fica dentro do orgao pai. Veja:
Fique atento aos seguintes pontos.
Tu não precisa de um listener setaTrue, a propria seleção do checkbox ira alternar o valor de externo tendo em vista que eles estao ligados.
Por causa disso é aconselhavel que tu reRenderize o checkbox também para evitar que eles fiquem fora de sincronia
Um evento onchange acho que iria manipular melhor esta ação do que um evento onclick.
E não esqueca de verificar como está o escopo do Mb
E
EuclidesFilizola
<!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:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:ui="http://java.sun.com/jsf/facelets"xmlns:rich="http://richfaces.org/rich"xmlns:a4j="http://richfaces.org/a4j"xmlns:t="http://myfaces.apache.org/tomahawk"><ui:compositiontemplate="/pages/layout.xhtml"><ui:definename="conteudo"><f:loadBundlebasename="patrimonio.util.lb"var="lb"/><h:formid="movimentacao_patrimonio"><strong><h:outputTextvalue="Movimentar Patrimonio"/></strong><hr/><h:panelGridcolumns="2"><h:outputTextvalue="Patrimonio"/><h:inputTextvalue="#{movimentacaoMBean.patrimonio.notaFiscalBens.codBem.dsMaterial}"readonly="true"/><h:outputTextvalue="Plaqueta"/><h:inputTextvalue="#{movimentacaoMBean.patrimonio.plaqueta.cdPlaqueta}"readonly="true"/><h:outputTextvalue="Setor Atual"/><h:inputTextvalue="#{movimentacaoMBean.setorAtual}"readonly="true"/><h:outputTextvalue="Setor para movimentacao"/><h:selectOneMenuvalue="#{movimentacaoMBean.setor.cdSetor}"id="codSetor"><f:selectItemitemLabel=""/><f:selectItemsvalue="#{movimentacaoMBean.listaDeTdsSetores}"/></h:selectOneMenu><h:panelGroupid="painel_orgao_pai"><h:outputLabelvalue="Externo"/><h:selectBooleanCheckboxid="id_externo"value="#{movimentacaoMBean.externo}">[b]<a4j:supportreRender="painel_orgao_pai"event="onclick"ajaxSingle="true"actionListener="#{movimentacaoMBean.setaTrue}"/>[/b]</h:selectBooleanCheckbox><br/>[b]<h:panelGroupid="painel_orgao_externo"><h:outputLabelvalue="Orgao externo"id="lb_orgaoexterno"rendered="#{movimentacaoMBean.externo}"/><h:selectOneMenuvalue="#{movimentacaoMBean.orgaoExterno.cdOrgao}"id="codOrgao"rendered="#{movimentacaoMBean.externo}"><f:selectItemitemLabel=""/><f:selectItemsvalue="#{movimentacaoMBean.listaDeOrgsExternos}"/></h:selectOneMenu></h:panelGroup>[/b]</h:panelGroup><t:saveStatevalue="#{movimentacaoMBean.patrimonio}"/><h:commandButtonaction="#{movimentacaoMBean.movimentarPatrimonio}"value="Movimentar"/></h:panelGrid><hr/></h:form><h:formid="tabela_movimentacao_patrimonio"><f:facetname="titulo"><h:panelGroup><h:outputTextvalue="Movimentacoes Cadastradas"></h:outputText></h:panelGroup></f:facet><rich:dataTableid="tabelaMovimentacaoPatrimonio"style="cursor:pointer;"value="#{movimentacaoMBean.listaMovimentacoesPorPatrimonio}"var="listMovimentacao"onRowMouseOver="this.style.backgroundColor='#C9FDC1'"onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"cellpadding="0"cellspacing="0"rows="10"><f:facetname="header"><rich:columnGroup><h:column><h:outputTextvalue="Setor"/></h:column><h:column><h:outputTextvalue="Bem"/></h:column><h:column><h:outputTextvalue="Data de entrada"/></h:column><h:column><h:outputTextvalue="Data de saida"/></h:column></rich:columnGroup></f:facet><h:column><h:outputTextvalue="#{listMovimentacao.setor.siglaSetor}"/></h:column><h:column><h:outputTextvalue="#{listMovimentacao.patrimonio.notaFiscalBens.codBem.dsMaterial}"/></h:column><h:column><h:outputTextvalue="#{listMovimentacao.dataEntrada}"/></h:column><h:column><h:outputTextvalue="#{listMovimentacao.dataSaida}"/></h:column></rich:dataTable></h:form></ui:define></ui:composition></html>
R
raf4ever
Bem,vamos diminuir as possibilidades de erro.
Deixa nessa página apenas o código que interessa por enquanto.
GRAVE:ErrorRenderingView[/pages/MovimentarPatrimonio.xhtml]com.sun.facelets.tag.TagException:/pages/MovimentarPatrimonio.xhtml@19,90<f:ajax>TagLibrarysupportsnamespace:http://java.sun.com/jsf/core, but no tag was defined for name: ajaxatcom.sun.facelets.compiler.CompilationManager.pushTag(CompilationManager.java:193)atcom.sun.facelets.compiler.SAXCompiler$CompilationHandler.startElement(SAXCompiler.java:194)atcom.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(UnknownSource)atcom.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(UnknownSource)atcom.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(UnknownSource)atcom.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(UnknownSource)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(UnknownSource)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(UnknownSource)atcom.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(UnknownSource)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(UnknownSource)atcom.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(UnknownSource)atcom.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(UnknownSource)atcom.sun.org.apache.xerces.internal.parsers.XMLParser.parse(UnknownSource)atcom.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(UnknownSource)atcom.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(UnknownSource)atjavax.xml.parsers.SAXParser.parse(UnknownSource)atjavax.xml.parsers.SAXParser.parse(UnknownSource)atcom.sun.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:232)atcom.sun.facelets.compiler.Compiler.compile(Compiler.java:104)atcom.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:192)atcom.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:141)atcom.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:93)atcom.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)atcom.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:553)atorg.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)atorg.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)atcom.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)atcom.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)atcom.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)atjavax.faces.webapp.FacesServlet.service(FacesServlet.java:245)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:510)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)atorg.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)atorg.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)atorg.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:341)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)atorg.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859)atorg.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:574)atorg.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1527)atjava.lang.Thread.run(UnknownSource)
R
raf4ever
f:ajax não eh só a partir do JSF 2.0?
Y
Ygor
Bahh é sim, não tinha me tocado para este pequeno detalhe :S
E
EuclidesFilizola
Alguem poderia me dar alguma solução ?
mudar para javascript ? utilizar algum outro componente ? algo relacionado ?
R
raf4ever
Bahh é sim, não tinha me tocado para este pequeno detalhe :S
Isso ta muito estranho. O Seu mb está ok? getters e setters…
Por via das duvidas preenche ou deleta essa linha…
<f:selectItem itemLabel="" />
T
thiago.correa
Olha só eu li na página do myfaces sobre o uso de rendered em componentes atualizados via ajax, vai parecer meio estranho mas testa da seguinte maneira
Testa aí.
A explicação é que o componente que você está tentando exibir, ele inicialmente não existe na árvore HTML pois, não foi renderizado, então essa é a solução apresentada (uma outra seria tirar o atributo rendered do panelGroup e colocar em cada um dos elementos, conviniente quando você tem 2, 3 componentes dentro do panel, mais inviável quando se tem dezenas deles)
E
EuclidesFilizola
Ygor:
Isso ta muito estranho. O Seu mb está ok? getters e setters…
Por via das duvidas preenche ou deleta essa linha…
<f:selectItem itemLabel="" />
eu fiz das duas formas, tanto preenchendo, como deletando e não funcionou …
thiago.correa:
Olha só eu li na página do myfaces sobre o uso de rendered em componentes atualizados via ajax, vai parecer meio estranho mas testa da seguinte maneira
Testa aí.
A explicação é que o componente que você está tentando exibir, ele inicialmente não existe na árvore HTML pois, não foi renderizado, então essa é a solução apresentada (uma outra seria tirar o atributo rendered do panelGroup e colocar em cada um dos elementos, conviniente quando você tem 2, 3 componentes dentro do panel, mais inviável quando se tem dezenas deles)
fiz +/- oq vc disse, de acordo com o código abaixo:
<%@tagliburi="http://java.sun.com/jsf/html"prefix="h"%><%@tagliburi="http://java.sun.com/jsf/core"prefix="f"%><%@tagliburi="http://richfaces.org/a4j"prefix="a4j"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head></head><body><f:view><a4j:outputPanelajaxRendered="true"><h:messagesshowDetail="true"/></a4j:outputPanel><h:formid="movimentacao_patrimonio"><h:panelGroupid="painel_orgao_pai"><h:outputLabelvalue="Externo"/><h:selectBooleanCheckboxid="id_externo"value="#{movimentacaoMBean.externo}"><a4j:supportreRender="painel_orgao_pai"event="onclick"ajaxSingle="true"action="#{movimentacaoMBean.showExterno}"/></h:selectBooleanCheckbox><br/><h:panelGroupid="painel_orgao_externo"rendered="#{movimentacaoMBean.externo}"><h:outputLabelvalue="Orgao externo"id="lb_orgaoexterno"/><h:selectOneMenuvalue="#{movimentacaoMBean.codOrgao}"id="codOrgao"><f:selectItemsvalue="#{movimentacaoMBean.listaDeOrgsExternos}"/></h:selectOneMenu></h:panelGroup></h:panelGroup><h:commandButtonaction="#{movimentacaoMBean.envia}"/></h:form></f:view></body></html>
Tentei usar o mesmo modelo que você fez, e funcionou perfeito, dá uma comparada e vê o que pode ser que esteja dando errado, qualquer coisa pode perguntar
Como está sendo feita uma requisição Ajax, o JSF não tem como atualizar a página indicando um erro, então, coloca-se esse outputPanel pois ele pode ser renderizado via ajax, e mostrar os erros que acontecem ao tentar submeter aquela requisição!
T
thiago.correa
Eu até faria uma melhoria no meu código, ao invés de popular a lista no método getListaDeOrgsExternos eu colocaria no showExterno, ficaria assim
Como está sendo feita uma requisição Ajax, o JSF não tem como atualizar a página indicando um erro, então, coloca-se esse outputPanel pois ele pode ser renderizado via ajax, e mostrar os erros que acontecem ao tentar submeter aquela requisição!
packagebr.gov.ce.srh.patrimonio.faces;importjava.util.ArrayList;importjava.util.Date;importjava.util.List;importjavax.faces.event.ActionEvent;importjavax.faces.model.SelectItem;importbr.gov.ce.srh.patrimonio.dao.MovimentacaoDAO;importbr.gov.ce.srh.patrimonio.dao.OrgaoExternoDAO;importbr.gov.ce.srh.patrimonio.dao.PatrimonioDAO;importbr.gov.ce.srh.patrimonio.dao.SetorDAO;importbr.gov.ce.srh.patrimonio.dao.UltimaMovimentacaoDAO;importbr.gov.ce.srh.patrimonio.entidade.Movimentacao;importbr.gov.ce.srh.patrimonio.entidade.OrgaoExterno;importbr.gov.ce.srh.patrimonio.entidade.UltimaMovimentacao;importbr.gov.ce.srh.patrimonio.entidade.Patrimonio;importbr.gov.ce.srh.patrimonio.entidade.Setor;publicclassMovimentacaoMBean{privatePatrimoniopatrimonio=newPatrimonio();privateMovimentacaomovimentacao=newMovimentacao();privateUltimaMovimentacaoultimaMovimentacao=newUltimaMovimentacao();privateSetorsetor=newSetor();privateSetorSetorAtual=newSetor();privateOrgaoExternoorgaoExterno=newOrgaoExterno();privatebooleanexterno;privateSetorDAOsetorDao=newSetorDAO();privatePatrimonioDAOpatrimonioDao=newPatrimonioDAO();privateMovimentacaoDAOmovimentacaoDao=newMovimentacaoDAO();privateUltimaMovimentacaoDAOultimaMoviDAO=newUltimaMovimentacaoDAO();privateOrgaoExternoDAOorgaoDao=newOrgaoExternoDAO();privateList<Movimentacao>listaMovimentacoesPorPatrimonio=newArrayList<Movimentacao>();privateList<SelectItem>listaDeTdsSetores=newArrayList<SelectItem>();privateList<SelectItem>listaDeOrgsExternos=newArrayList<SelectItem>();publicMovimentacaoMBean(){}publicvoidshowExterno(){System.out.println("is externo: "+externo);}/* public void setaTrue(ActionEvent evt){ this.setExterno(true); }*/publicList<Movimentacao>listarTdasMovimentacoes(){List<Movimentacao>lista=this.movimentacaoDao.buscarMovimentacaoPorCodPatrimonio(this.patrimonio.getCdPatrimonio());returnlista;}publicList<SelectItem>listarSetores(){List<SelectItem>listaSetores=newArrayList<SelectItem>();List<Setor>listaTemporaria=setorDao.listarTodosSetores();for(Setorsetor:listaTemporaria){listaSetores.add(newSelectItem(setor.getCdSetor(),setor.getSiglaSetor()));}returnlistaSetores;}publicList<SelectItem>listarOrgaosExternos(){List<SelectItem>listaOrgaos=newArrayList<SelectItem>();List<OrgaoExterno>listaTemporaria=orgaoDao.buscarTodos();for(OrgaoExternoorgao:listaTemporaria){listaOrgaos.add(newSelectItem(orgao.getCdOrgao(),orgao.getDsSigla()));}returnlistaDeOrgsExternos;}publicStringmovimentarPatrimonio(){this.setor=setorDao.findById(this.setor.getCdSetor());//System.out.println("PATRIMONIO: "+this.patrimonio.getNotaFiscalBens());this.movimentacao.setSetor(this.setor);this.movimentacao.setPatrimonio(this.patrimonio);/* if (!ultimaMoviDAO.listarUltMovimentacao(this.patrimonio).isEmpty()){ this.ultimaMovimentacao = ultimaMoviDAO.listarUltMovimentacao(this.patrimonio).get(0); this.movimentacao = movimentacaoDao.buscarMovimentacaoPorCodPatrimonio(this.patrimonio.getCdPatrimonio()); movimentacaoDao.update(movimentacao); }*/this.patrimonio.setMovimentado(true);patrimonioDao.updateEntity(this.patrimonio);movimentacaoDao.addEntity(this.movimentacao);return"MovimentarPatrimonio";}/** * @param patrimonio the patrimonio to set */publicvoidsetPatrimonio(Patrimoniopatrimonio){this.patrimonio=patrimonio;}/** * @return the patrimonio */publicPatrimoniogetPatrimonio(){returnpatrimonio;}/** * @param movimentacao the movimentacao to set */publicvoidsetMovimentacao(Movimentacaomovimentacao){this.movimentacao=movimentacao;}/** * @return the movimentacao */publicMovimentacaogetMovimentacao(){returnmovimentacao;}/** * @param listaDeTdsSetores the listaDeTdsSetores to set */publicvoidsetListaDeTdsSetores(List<SelectItem>listaDeTdsSetores){this.listaDeTdsSetores=listaDeTdsSetores;}/** * @return the listaDeTdsSetores */publicList<SelectItem>getListaDeTdsSetores(){setListaDeTdsSetores(this.listarSetores());returnlistaDeTdsSetores;}/** * @param setor the setor to set */publicvoidsetSetor(Setorsetor){this.setor=setor;}/** * @return the setor */publicSetorgetSetor(){returnsetor;}/** * @param setorAtual the setorAtual to set */publicvoidsetSetorAtual(SetorsetorAtual){SetorAtual=setorAtual;}/** * @return the setorAtual */publicSetorgetSetorAtual(){List<Movimentacao>movTemporaria=newArrayList<Movimentacao>();movTemporaria=movimentacaoDao.buscarMovimentacaoPorCodPatrimonio(this.patrimonio.getCdPatrimonio());for(Movimentacaomovimentacao:movTemporaria){//System.out.println("SETOR DA MOVIMENTAÇÃO: "+movimentacao.getSetor().getSiglaSetor());this.SetorAtual=movimentacao.getSetor();}returnSetorAtual;}/** * @param listaMovimentacoesPorPatrimonio the listaMovimentacoesPorPatrimonio to set */publicvoidsetListaMovimentacoesPorPatrimonio(List<Movimentacao>listaMovimentacoesPorPatrimonio){this.listaMovimentacoesPorPatrimonio=listaMovimentacoesPorPatrimonio;}/** * @return the listaMovimentacoesPorPatrimonio */publicList<Movimentacao>getListaMovimentacoesPorPatrimonio(){setListaMovimentacoesPorPatrimonio(listarTdasMovimentacoes());returnlistaMovimentacoesPorPatrimonio;}publicvoidsetListaDeOrgsExternos(List<SelectItem>listaDeOrgsExternos){this.listaDeOrgsExternos=listaDeOrgsExternos;}publicList<SelectItem>getListaDeOrgsExternos(){setListaDeOrgsExternos(listarOrgaosExternos());returnlistaDeOrgsExternos;}publicvoidsetOrgaoExterno(OrgaoExternoorgaoExterno){this.orgaoExterno=orgaoExterno;}publicOrgaoExternogetOrgaoExterno(){returnorgaoExterno;}publicvoidsetExterno(booleanexterno){this.externo=externo;}publicbooleanisExterno(){returnexterno;}}
Na verdade isso ai não são 2 filtros,mas sim um filtro e a declaração do mapeamento…
No caso,o filtro do RichFaces intercepta todas as requisições .jsf
E
EuclidesFilizola
eu acabei de ajeitar isso, e infelimente, nada funciona. =(
R
raf4ever
nenhuma msg de erro,warning,nada???
E
EuclidesFilizola
nenhum error, nenhum rerended, nada.
e detalhe, qndo eu coloco para debbug, ele não entra no método “showExterno” , ou melhor, ele parece q nem chama o MB.
R
raf4ever
e se vc tentar o exemplo que o nosso amigo postou?
sei q está bem parecido,mas tente criando uma nova página e um novo MB.Apenas pra desencargo de consciência.
T
thiago.correa
Meu conselho, faça um projeto só com essa parte, comce com jsf, depois com o rich faces e por último com o facelets, daí você vai descobrir aonde está o furo da bala! Ou, tente aumentar os níveis de log para ver se nenhum dos 3 frameworks não estão tentando alertar de algum problema!
Pois como disse, só com o jsf + richfaces, funfou legal! Tenho em casa um outro projeto com jsf,richaces,facelets,spring e hibernate e funciona 100%. É bem provável que seja alguma coisa de configuração no web.xml! Ele não dá nenhum erro de JS???! Dá uma olhada no console do Firefox!
E
EuclidesFilizola
pelo visto, vou ter que voltar pro velho javascript…
vai ser o único jeito pelo visto, até alguem tentar uma outra solução.