Duvida em logica com RichFaces

3 respostas
J

Ola pessoal, gostaria de fazer o seguinte:
colocar uma div ou panel no centro da tela e a cada menu q o indiviu clicar,
utilizando ajax o conteudo desse panel e preenchido, preenchido com
um formulario ou seja la o que for que eu tenha colocado em algum otro arquivo.

como se fosse um switch basico, a cada op passado por get, ele inclui um arquivo dif.
Porem sera com ajax e o arquivo sera informado ao clicar no menu? e possivel?

quais componentes devo utilizar? a4j:outputPanel ?

obrigado

3 Respostas

rafagil

usa a4j:include dentro da Div, e dá um reRender nela a cada vez q o usuário clicar em um item do menu.

J

otimo, mas como eu indico qual arquivo vai ser incluido,
no value do menu?
se vc puder mostra em 2 3 linhas ou tem no guia?
obrigado

rafagil

Cria um atributo no seu bean chamado, por exemplo, “include”, do tipo String.

Daí, vc cria um método que muda o valor dessa variável de acordo com o item do menu que vc clicar,

Então, na página, vc coloca um a4j:commandLink (Ou qualquer outro componente que faça a requisição ajax) e no atributo “reRender”, vc coloca o id do panel q tiver o include. veja um Exemplo:

<a4j:commandLink value="Pagina 1" action="#{bean.changeView}" reRender="visualiza">
  <f:param name="page" value="/pagina1.jsp" />
</a4j:commandLink>
<a4j:commandLink value="Pagina 2" action="#{bean.changeView}" reRender="visualiza">
  <f:param name="page" value="/pagina2.jsp" />
</a4j:commandLink>

<h:panelGroup id="visualiza">
  <a4j:include viewId="#{bean.include}" />
</h:panelGroup>

No Bean:

...
  private String include;
  ...
  // getters e Setters
  ...
 public void changeView() {
     include = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("page");
 }

Mais ou menos isso.

Criado 26 de fevereiro de 2008
Ultima resposta 28 de fev. de 2008
Respostas 3
Participantes 2