Como fazer <rich:panelMenuItem> executar metodo do MBean e reRenderizar um <a4j:outputpanel:>
13 respostas
Malkav.Felipe
Bom pessoal… to apanhando muuuuuito desse negocio de reRender. Tentei varias formas de tentar reRenderizar apenas uma parte da página. Principalmente agora que to tentando usar o rich:panelMenu… To completamente confuso e perdido.
Gostaria da ajuda de vocês. Qualquer coisa é bem vinda.
:arrow: 1º - A minha maior dúvida no momento é fazer um rich:panelMenuItem executar um método do meu managedBean… Pra testar fiz meu método retornar uma String com a regra de navegação definida lá no faces-config e então quando clico no rich:panelMenuItem não acontece nada… não muda de página. É como se o método não fosse executado.
:arrow: 2º - O teste acima foi apenas um…teste 8) , pois minha real intenção é fazer com que ao clicar em um rich:panelMenuItem seja executada uma ação, mas que eu pode-se dar um reRender apenas em um a4j:outputpanel: que tenho na página… mas acontece o mesmo problema acima… ao clicar no rich:panelMenuItem não acontece nada…
Gostaria de saber o que necessariamente deve ser definido em cada uma das tags (rich:panelMenuItem e a4j:outputpanel:) para que eu possa dar um reRender no a4j:outputpanel:… que tipo de parametros devo colocar em cada um dos componentes…
Não sei se fui claro. Mas espero anciosamente qualquer tipo de ajuda…
Tenho um arquivo: layout.xhtml. onde tenho meus menus… e em uma certa tag…
quero que reiderize estes arquivos!
menus mapeados no arquivo faces-config.xml
estão todos funcionado, porque reiderizam os arquivos isolandos corretamente.
Uso a versão do richFaces 3.3.3
Dicas são bem vindas!
felipe.sodre
Estou com uma duvida parecida a dias, talvez vcs possam me ajudar:
Seguinte quero que ao selecionar um item do tree atualize um panel que esta do lado, porem ele da erro ao renderizar o a4j:include
segue o codigo:
<%@tagliburi="http://richfaces.org/rich"prefix="rich1"%><%@tagliburi="http://richfaces.org/a4j"prefix="a4j"%><%@pagelanguage="java"contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%><%@taglibprefix="f"uri="http://java.sun.com/jsf/core"%><%@taglibprefix="h"uri="http://java.sun.com/jsf/html"%><%@tagliburi="http://richfaces.ajax4jsf.org/rich"prefix="rich"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title></title></head><body><f:view><h:form><tablestyle="width: 100%"id="tableMenu"><tralign="left"style="width: 100%"><tdwidth="180px"align="left"valign="top"><rich:panelheader="Menu Principal"style="width: 180px"><rich:treenodeSelectListener="#{treeBean.processSelection}"reRender="includeTest"ajaxSubmitSelection="true"switchType="client"value="#{treeBean.treeNode}"var="item"ajaxKeys="#{null}"icon="images/logomenu.png"iconLeaf="images/iconLeaf.png"rendered="true"></rich:tree></rich:panel></td><tdalign="left"valign="top"id="columnPages"><rich:panelheader="TESTE"style="width:100%"id="pnlPages"rendered="true"><a4j:includeviewId="#{treeBean.page}"id="includeTest"/></rich:panel></td></tr></table></h:form></f:view></body></html>
O que consigo ver que esta ocorrendo no segundo erro
e um estouro de memória.
Tente limitar o numero de objetos em sua arvore, para fazer um teste e ver se resolve!
Limite os objetos do Hash!
felipe.sodre
Por favor ninguem?
o arquivo properties que ele le pra montar o tree
1=Admin
1.1=Robinson Crusoe
1.2=Start In Life
1.3=Slavery And Escape
2=Config
2.1=Plays
2.2=Politian
2.3=Short storiesal Ballad
3=Tratamento
3.1=The Song of Hiawatha
3.2=Introduction
3.3=I. The Peace-Pipe
3.4=II. The Four Winds
Coloca o caminho real desse arquivo xhtml, que você tem, por que eu tenho aqui da forma que coloquei e funciona.
parece que falta a barra!
felipe.sodre
Uma duvida marcelo todas paginas estao no mesmo diretorio so colocando / resolve e outra vejo todo mundo importar XHTML tem diferenca?
obrigado
felipe.sodre
Colocando a barra deu o mesmo erro
MarceloNeo
Você precisa enteder a sua aplicação, se usa JSP, deve importar JSP.
se usa outro formato, deve importar tal formato!
Existe diferenca sim! só na sintaxe, mas o resultado deve ser o mesmo!
Sugestão! só importa o arquivo sem nada, com Html simples. ve se da erros!
Depois vai para a próxima etapa!
Seu arquivo web.xml tem que saber tratar arquivos JSP!
Veja no forum tem varias post neste sentido!
Também veja. Se o componte suporta importar outros formatos de arquivo!
felipe.sodre
Estou com um warning na aplicação:
log4j:WARN No appenders could be found for logger (org.ajax4jsf.renderkit.ChameleonRenderKitFactory).
log4j:WARN Please initialize the log4j system properly.
Acho que o erro eh causado por este problema alguem sabe o que eh isso?