É possivel navegar na app Web sem Reload?

Pessoal,

Estou utilizando JSF, facelets, richfaces e mais uma porrada de coisas (não aguento mais tanta sigla…) em uma aplicação nova aqui. E estava com a idéia de criar uma página base (template) utilizando o facelets que seria a “cara” da minha aplicação, e nela colocar um topo, um menu lateral para navegação no site e por fim uma área central onde as coisas “aconteceriam”, basicamente é onde eu quero colocar as minhas outras páginas.

Por questão de desempenho estamos utilizando navegação orientada a estados (Rafael Pontes - http://www.rponte.com.br/2008/04/10/utilizando-ajax-com-jsf-de-maneira-eficiente), que é uma sacada que eu achei muito interessante, evitando ter muitas páginas e o reload da mesma para cada operação.

Mas, agora vem o meu problema, no menu que eu citei inicialmente deveria fazer a chamada da página desejada e carregá-la na área que eu defini. Além de dar erro quando eu carrego essa página nessa área eu estou fugindo do que eu até hoje vi de JSF quanto a regras de navegação. É correto fazer isso???

Se eu seguir as regras de navegação do JSF (configurando elas no faces-config.xml) eu sei que posso criar páginas filhas (ou clientes) do template que eu criei e todas ficariam com o mesmo formato, mas para cada chamada no menu eu faria o reload da página. Gostaria de saber com quem trabalha a mais tempo com JSF se o que eu estou tentando fazer está correto???

Até onde pesquisei não vi ninguém que faça essa mesma abordagem que eu estou procurando… :frowning:

Não sei se consegui ser claro na explicação…
Aceito sugestões…

Obrigado

Desculpa se eu falar besteira, mas a abordagem q vc quer é o Ajax? Navegar sem reload de página?

Digamos que eu nao queria renderizar a página toda novamente, pois boa parte dela não se altera, e sim a área do meio.
Eu quero alterar, fazer o reload, apenas uma das áreas que eu defini.

Não bem o ajax…

Com Ajax vc não precisa atualizar td sua página… vc pode atualizar apenas o div central da sua página… a página que vc chamaria não seria um HTML completo, apenas um div tbm…

Não resolve seu problema?

Como fica a utilização dos componentes do JSF nessas divs??? até onde eu vi e testei, eu preciso definir as meus componentes JSF, a4j, richfaces, facelets para utilização seja na tag html ou ui:

xmlns=“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
xmlns:t=“http://myfaces.apache.org/tomahawk
xmlns:c=“http://java.sun.com/jstl/core

essas definições eu não preciso fazer novamente???

Cara, minha experiencia com JSF não é nada que vc va admirar rs… mas em situações semelhantes, costuma ser necessário refazer as definições sim.

Como não manjo JSF ainda, não sei se a tag ui pode ir dentro do div. Se puder resolve com isso. Senão, abre o html com as definições sem problema, mas nao cria head, nem body nada… só um div dentro.

Acho que assim deve funcionar.

Ok Paulo, vou tentar isso e já dou um retorno…

Obrigado!!

Fiz os teste e inicialmente funcionou isso!!!
Até mesmo definindo por ui:component funciona…

tenho agora uma nova suspeita, parece que alguns componentes do richfaces como o rich:dataTable e o rich:modalPanel estão dando problema quando eu trabalho dessa forma…
se eu fizer o reload da página toda (leia-se utilizando páginas clientes do meu template original) não apresenta erro algum… pode ser alguma coisa quanto a referencia… mas não consigo debugar certinho…
quando apresenta o erro ele fala que é na linha 1542184597… meu código nao tem td isso de linha nem pagando…

removendo esses componentes do código ele faz o carregamento da página sem erro algum!!

mas voltando a pergunta original, essa abordagem é aceita para JSF???

Obrigado…

Bom cara, daqui pra frente vou deixar pra algum especialista de JSF te ajudar, porque ai fige ao meu alcance.

Boa sorte.