Facelets
Boa Noite Pessoal,
Estou com dificuldades em fazer a navegabilidade de páginas ultilizando facelets, JSFe componentes richfaces, tenho uma página de menu e quero chamar a página de cadastro através do Cadastro Secretaria na mesma página do menu por exemplo:
Menu
Cadastro Operações Help
Cadastro Secretaria
Estou na página de menu ao clicar em cadastro/Cadastro Secretaria, quero que chama a minha página de cadastro aqui (abra aqui) ao invés de ir para outra página, alguem pode me ajudar?

Roberto Rodrigues.
Curtidas 0
Respostas
Carlos Mazzi
03/05/2010
Ola, todo seu código de navegabilidade deve ser mapeado no seu arquivo de contexto,
no caso, é o faces-config.xml, abra o e indique o mapeamento desejado.
<navigation-rule>
<from-view-id>/bairro/bairrolist.jsp</from-view-id>
<navigation-case>
<from-outcome>goToNewBairro</from-outcome>
<to-view-id>/bairro/bairronew.jsp</to-view-id>
</navigation-case>
</navigation-rule> criada sua regra de navegação. NOTE: que a tag <from-view-id) indica da aonde (origem) que a action está saindo. e a tag <to-view-id> pra onde ela deve ir... o nome dessa regra fica na tag <from-outcome> então vc tem o relacionamento chamado goToNewBairro(nesse exemplo), partindo de bairro/bairrolist.jsp, e indo para >/bairro/bairronew.jsp. Ai na sua página(origem), num botao, num link, onde voce quiser chamar uma ACTION. ex: <h:commandButton value="#{msgs.Novo}" action="#{BairroFaces.doAddBairro}"/> Olha que na action , temos um arquivo Faces, no caso BairroFaces, que terá um método que interliga o seu arquivo faces-config, a essa string "goToNewBairro". Então no nosso arquivo faces , fica assim: public String doAddBairro() {
bairroSelected = new Bairro();
return "goToNewBairro";
} Concluindo: Seu faces(BairroFaces), retorna uma string, que indica ao seu faces-config, o qual mapeia um link de navegacao. na sua pagina (origem) , vc informa na action o seu Faces.Metodo, que retorna a tal string. Pronto. Espero ter ajudado, abraços++
<from-view-id>/bairro/bairrolist.jsp</from-view-id>
<navigation-case>
<from-outcome>goToNewBairro</from-outcome>
<to-view-id>/bairro/bairronew.jsp</to-view-id>
</navigation-case>
</navigation-rule> criada sua regra de navegação. NOTE: que a tag <from-view-id) indica da aonde (origem) que a action está saindo. e a tag <to-view-id> pra onde ela deve ir... o nome dessa regra fica na tag <from-outcome> então vc tem o relacionamento chamado goToNewBairro(nesse exemplo), partindo de bairro/bairrolist.jsp, e indo para >/bairro/bairronew.jsp. Ai na sua página(origem), num botao, num link, onde voce quiser chamar uma ACTION. ex: <h:commandButton value="#{msgs.Novo}" action="#{BairroFaces.doAddBairro}"/> Olha que na action , temos um arquivo Faces, no caso BairroFaces, que terá um método que interliga o seu arquivo faces-config, a essa string "goToNewBairro". Então no nosso arquivo faces , fica assim: public String doAddBairro() {
bairroSelected = new Bairro();
return "goToNewBairro";
} Concluindo: Seu faces(BairroFaces), retorna uma string, que indica ao seu faces-config, o qual mapeia um link de navegacao. na sua pagina (origem) , vc informa na action o seu Faces.Metodo, que retorna a tal string. Pronto. Espero ter ajudado, abraços++
GOSTEI 0

Dyego Carmo
03/05/2010
Resolveu Roberto ?
GOSTEI 0

Roberto Rodrigues.
03/05/2010
Dyego eu acompanhei as suas video aulas sobre facelets e não ficou bem claro pra mim de como ultilizar os Templates, pois estou ultilizando o netbeans 6.8 e não aparece no meu projeto o foward.jsp o que fazer pra resolver isso?
GOSTEI 0

Dyego Carmo
03/05/2010
apartir da versao 6.8 não precisa mais do forward , ele abre o .faces direto.
GOSTEI 0

Roberto Rodrigues.
03/05/2010
Alguem pode me ajudar passo a passo de como fazer um template, pois acompanhei as video aula do Dyego e não ficou claro pra mim estou com dúvidas de como aplicar no meu projeto, onde quero que o minha barra de Menu repita em todas as páginas.
GOSTEI 0

Dyego Carmo
03/05/2010
Qual foi a serie de aulas que voce viu ?
GOSTEI 0

Roberto Rodrigues.
03/05/2010
Video aulas sobre Facelets onde contem duas aulas, a possibilidade Dyego de dar continuidade ou uma introdução sobre facelets com templates como esse onde tenho dúvidas de como fazer pra deixar minha barra de menu como padrão para todas as páginas.
GOSTEI 0

Dyego Carmo
03/05/2010
Estarei conversando junto com a devmedia para prosseder com as aulas :)
GOSTEI 0