JSF - passagem de parâmetros via GET + popup

Boa tarde!
Preciso de uma ajuda com JSF.

Tenho um formulário de cadastro que possui algumas “telas” de pesquisa.
Ou seja, o usuário vai realizando as pesquisas e depois submete o formulário todo preenchido.
Estava utilizando “suggestion box” nessas pesquisas, mas o cliente quer janelas popup.

Meu cenário é o seguinte:
O usuário está preenchendo o formulário e vai clicar num botão “Pesquisar”.
Será aberto um popup com a tela de pesquisa.
No próprio popup será listado o resultado da pesquisa e, quando o usuário selecionar um dos registros, será encaminhado para a tela original(form de cadastro) e os dados serão preenchidos.
Lembrando que o popup deve ser fechado e os dados que o usuário havia preenchido antes da(s) pesquisa(s) devem ser mantidos.

Pensei nas seguintes soluções:
1)
abrir a popup via javascript
criar um bean que represente a tela popup(pesquisa)
carregar o bean que representa meu form de cadastro(através do FacesContext)
setar os valores da pesquisa no bean do form de cadastro
redirecionar para o form de cadastro

abrir a popup via javascript
passar os parâmetros via GET para uma Servlet
recuperar o FacesContext dentro da Servlet
carregar o bean que representa meu form de cadastro
setar os valores da pesquisa no bean da tela de cadastro
redirecionar para a tela de cadastro

Problema:
JSF não foi feito pra trabalhar com GET.
E também não é simples sincronizar os comandos (actions, links) com javascript (abrir popup, fechar popup).
Vi essa “solução” num tópico aqui do GUJ (http://www.guj.com.br/posts/list/41890.java#283964 - opcao 3)

Esse é meu primeiro projeto com JSF e estou um tanto inseguro sobre qual caminho seguir.
Na verdade, nem sei se será possível fazer dessa forma que estou pensando.
Alguém já enfrentou um problema parecido? Qual seria a melhor opção nesse caso?
Aguardo sugestões.

Amigo eu aconselho voce a utilizar Richfaces…

[code]…

<rich:modalPanel id=“panel”>

<f:facet name="header">

    <h:outputText value="header" />

</f:facet>

...

<!--Any Content inside-->

...

Hide

</rich:modalPanel>

Show

…[/code]

Fica muito muito mais facil manipular javascript!!
de uma olhada noque você pode fazer com richfaces http://www.jboss.org/file-access/default/members/jbossrichfaces/freezone/docs/devguide/en/html_single/index.html
qualquer duvida poste ai ^^

Boa dica! Acho que deve atender minhas necessidades. :smiley:
Já comecei a “brincar” com ele, mas surgiu uma dúvida:
É possível ter um form dentro do modalPanel?

opa da sim!!!
você pode colocar oque você quiser dentro… alem de ficar muito bonito o modal…
ainda e compativel com a maioria dos navegadores…

tô lendo a documentação aqui agora. :smiley:
valeu pela dica!
abraço

rdgms, aproveitando sua boa vontade…
consegui fazer o modal panel funcionar. usei um form separado, tudo certo!

meu problema agora é na hora de retornar para a tela principal (form de cadastro).
os dados que eu obtive através da pesquisa no modal panel foram setados pra sessão.
quando retorno pra tela principal, os dados não estão preenchidos.
se eu retornar pra tela principal da forma convencional (apenas apontando para a página mapeada no faces-config), a tela é “resetada”.
tentei retornar null mas aconteceu o mesmo problema.
tentei usar o reRender mas tb não funcionou.
tô esquecendo alguma coisa?

obrigado!

Olha… por exemplo você quer retornar em um rich:dataGrid uma forma de voce fazer é dar um binding do datagrid quando executar a consulta você no managed bem atualiza a datagrid e da um rerender…