Abrir nova janela com detalhes da sessão

3 respostas
D

Pessoal, minha duvida é simples acho que até já vi alguma coisa parecida por aqui mas não encontrei nada.
Tenho um jsp que lê um atributo da sessão e mostra na pagina, por exemplo “objeto A” e queria que ao clicar num botão abrisse uma nova janela com os detalhes do objeto A tipo “id objeto A: 2”.
Como isso poderia ser feito ja que na abertura da janela ja não tem mais a sessão? Pensei em passar o session id mas sei la, deve ter um jeito melhor.
Valeu.

3 Respostas

W

Estou entendendo que vc não quer chamar o servlet de novo e fazer isso aí em javascript não é ? se for isso mesmo, preencha algumas variáveis javascript com as informações que vc quer mostrar depois, tipo:... script language="javascript"> var idObjeto1=<c:out var="${session.objeto1.id}"/>; var idObjeto2=<c:out var="${session.objeto2.id}"/>; </script ...
mais ou menos isso aí. Pode ter algum erro de sintaxe mas a idéia geral é a seguinte: crie variáveis javascript com as coisas que vc quer acessar depois. Se forem dinâmicas, crie nomes de variáveis javascripts de forma dinâmica também.
Uma observação: se isso for um caso isolado, faça desse jeito mesmo, caso isso se torne um padrão nas suas aplicações, considere usar técnicas e ferramentas de ajax, tipo DWR.

A

Olá.
Em Struts eu implementei isto com links ao invés de botões,relatórios e Java Script.
Dentro do link aponta para a action daquilo que você quer,por exemplo uma pesquisa no Banco daquele produto em que você está clicando e está salvo na sessão,a forward desta action é um relatório.
Este relatório por sua vez,tem uma cláusula where para filtro que tem como parâmetro este atributo de session que você clicou e mostra por exemplo a imagem daquele produto.
Dentro do link tem uma função Java Script que faz este relatório abrir em forma de pop-up com o detalhe.
Se quiser dá um toque que eu te mando alguma coisa de fontes.
Um abraço.
Eduardo

D

Valeu pessoal, foi feito no clique do botão chama uma função javascript que abre uma nova janela mandando o form.
Abraço.

Criado 10 de julho de 2006
Ultima resposta 11 de jul. de 2006
Respostas 3
Participantes 3