Duvida atualizar ajax no primefaces

4 respostas
T

Bom dia, eu estou fazendo uns testes para usar em um projeto da faculdade e estou criando todo o menu principal baseado no componente dock do pf, pretendo fazer toda a navegação através deste menu sendo que a pagina do menu não muda, o que muda é o conteúdo da pagina e isso deve ser feito com ajax, mas estranhamente a atualização via ajax nao esta funcionando entao vou mostrar o que preciso e espero que possam me ajudar.

<h:body  style=" background-image: -webkit-gradient(linear,left top,right top, color-stop(0.20,  #ffc500), color-stop(0.50, #FFef20),color-stop(0.80,  #ffc500)); "> 
        <div draggable="true" style="background-color: #2e2c2c; height:70px; width:100%; position:absolute; left:0%; top:91%; " id="footer"/>
        <h:form>
        <p:dock position="top" itemWidth="60">
         //Estes deveriam atualizar o grouppanel teste quando fosse clicado mas nao o fazem:
   <p:menuitem value="Home" action="#{UserController.setMenu_id(1)}" update=":teste" icon="home.png"/>
            <p:menuitem value="Email" action="#{UserController.setMenu_id(0)}"  update=":teste" icon="email.png"/>
//------------------------------------------
                <p:menuitem value="Home" icon="link.png" url="#"/>  
               <p:menuitem value="Home" icon="music.png" url="#"/>  
                <p:menuitem value="Home" icon="portfolio.png" url="#"/>  
                  <p:menuitem value="Home" icon="video.png" url="#"/> 
        </p:dock>
        </h:form>
 
        <h:panelGroup id="teste" rendered="#{UserController.menu_id==1}"  layout="block">
        <div id="center" style="background-color: #2e2c2c; height:30%; width:60%; border-radius:50px; position:absolute; left:17%; top:41%; "/> 
        </h:panelGroup>
           <p:ajaxStatus style="width:64px;height:64px;position:fixed;right:5px;bottom:5px">
    <f:facet name="start">
        <p:graphicImage value="progressbar.gif" />
    </f:facet>

    <f:facet name="complete">
        <h:outputText value=""/>
    </f:facet>
</p:ajaxStatus>
    </h:body>

Eu ja tentei varias coisas como ajax=false ou ainda colocar um p:ajax update no form mas nada disso esta adiantando, o codigo funciona mas so quando eu atualizo a pagina pelo f5 entao se alguem souber e puder me ajudar eu agradeço muito.
Abraços estou no aguardo!!!

4 Respostas

T

peço desculpas pelo duplicado mas ocorreu um erro no servidor do proprio forum e acabei mandando de novo sem querer

jeffev

Ocorre algum erro ao rodar?

T

nao nao, nenhum erro, o que eu to tentando fazer é atualizar a pagina assim que clicar no menuitem do dock sem precisar apertar f5 nao ta dando certo e nao entendo como farei isso porque o dock nao permite que eu coloque um <p:ajax dentro dele, da erro.

T

Acho que nao me fiz entender, mas muito bem vou ser bem direto agora, o a pagina faz é renderizar aquele grouppanel apenas se o bean usercontroller.getMenuid = 1, é apenas um teste mas é muito importante para que eu possa continuar com minha aplicação porem acontece que quando eu clico naqueles menuitem o primeiro e o segundo a mudança acontece corretamente mas nao atualiza o estado atual do grouppanel cuja id é teste ou seja ele nao reconhece que o grouppanel deve ser renderizado ou nao, isso so acontece quando eu aperto f5 o que nao é do meu gosto e se eu seguisse a aplicação nesse modelo ficaria horrivel,eu poderia facilmente por um <p:ajax ou <f:ajax ali dentro desses menuitems mas acontece que o menu item nao é reconhecido por comportamento de componentes do javaserverfaces quando se trata de ajax tanto que se eu ponho ele da um erro e nada funciona, baseado nisso alguem tem uma dica?
Agradeço desde ja :slight_smile:

Criado 5 de outubro de 2012
Ultima resposta 5 de out. de 2012
Respostas 4
Participantes 2