| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 14:29:08
|
lance
JavaBaby
Membro desde: 28/03/2006 21:00:44
Mensagens: 81
Offline
|
Olá
Dei uma procurada rápida no fórum e no google mas não achei nada que solucione o meu problema. Todos os posts que eu achei dizem que para colocar e retirar algo da sessão, usando JSP basta usar o
session.getAttribute e session.setAttribute, request.set e get e etc.
Estou fazendo isto com o seguinte scriplet inserido dentro de uma função javascript:
<%session.setAttribute("aaa","codMapa");%>
alert(<%session.getAttribute("aaa") ;%> ) ;
Estou colocando um valor fixo chamado aaa e com o valor codMapa e tentando recuperá-lo na linha seguinte, para fins de teste. Para isto uso um alert para jogar o valor na tela.
Porém não estou conseguindo recuperar este valor, não sei porque.
Já usei tb o request.getSession().getAttribute e o request.getAttribute (com seus respectivos set's). Alguém poderia me dar uma luz?
Obrigado,
Oscar
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 14:37:27
|
otaviofcs
Virtual Machine Man
![[Avatar]](/images/avatar/2509e9380eb3623ef61046dcd190275d.jpg)
Membro desde: 21/12/2006 18:01:54
Mensagens: 511
Localização: Rio de Janeiro
Offline
|
tenta: alert('<%=session.getAttribute("aaa") %> ') ;
Você está realmente setando e recuperando o atributo da sessão assim uma linha abaixo da outra? Você realmente necessita jogar esse atributo na sessão? Não pode jogar na request?
abraços,
Otávio
|
visite o blog da Riopro em:
http://blog.riopro.com.br
Aumente a capacidade de inovação na sua empresa usando o Zest:
http://zest.com.br
Conheça também:
http://votebolsa.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 14:50:03
|
Humbertim2
JavaChild
![[Avatar]](/images/avatar/9b559e998150214661f26a1ced740688.jpg)
Membro desde: 31/01/2007 22:04:03
Mensagens: 115
Localização: São Paulo
Offline
|
olá...
tente dessa maneira
lembrando que eh necessario iniciar a sessao no cabeçalho do codigo...
session="true"
abraço
|
A modéstia, quando excessiva, é como o vento que apaga o archote cegando o viadante nas trevas de uma noite interminável.
Para que possa o homem vencer os múltiplos obstáculos que se lhe deparam na vida, precisa ter o espírito preso às raízes de uma ambição que o impulsione a um ideal qualquer.
O homem que calculava |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 14:52:29
|
lance
JavaBaby
Membro desde: 28/03/2006 21:00:44
Mensagens: 81
Offline
|
Olá,
Obrigado pela rápida resposta.
Estou sim fazendo uma linha embaixo da outra, porém só para testes. Agora pretendo colocar nos lugares corretos.
Eu preciso setar estes atributos para pegar na próxima página. não sei se poderia ser no request. Qual a diferença de colocar na sessão e no request?
O que tu me faluo pra usar funcionou, mas eu não entendi a diferença: no teu ele pega o retorno e transforma para string(por causa do <%= ), correto?
No que eu estava tentando antes, ele retornava o valor, que era uma string. Não?
Obrigado,
Oscar
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 15:02:15
|
ramilani12
GUJ Master
![[Avatar]](/images/avatar/b597460c506e8e35fb0cc1c1905dd3bc.png)
Membro desde: 11/03/2005 01:23:30
Mensagens: 1944
Localização: Curitiba-PR
Offline
|
A diferença em vc colocar valores no request é pra cada pagina JSP vc terá que setar -> request.setAttribute("a","a"); e para outra pagina pegar-> request.getAttribute("a"); scope = page
Diferente de Session session.setAttribute("a","a"); o objeto esterá no request enquanto a sessão existir scope=session
|
my delicious| follow me| linkedin |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 15:43:53
|
otaviofcs
Virtual Machine Man
![[Avatar]](/images/avatar/2509e9380eb3623ef61046dcd190275d.jpg)
Membro desde: 21/12/2006 18:01:54
Mensagens: 511
Localização: Rio de Janeiro
Offline
|
Olá lance,
vamos por partes:
lance wrote:Qual a diferença de colocar na sessão e no request?
A diferença é que você coloca no request se vai encaminhar para outra página (dentro de uma mesma chamada) e coloca na sessão se é para ficar armazenada por toda (ou pelo menos até você dar um remove) a sessão do usuário. Evite sessões muito grandes pois diminui a capacidade de escalar (atender a muitos usuários simultaneamente) da aplicação.
Não quer dizer que você não possa guardar na sessão, só tem que saber se vale à pena.
Eu tinha o hábito de armazenar grandes sessões e isso era péssimo.
lance wrote:O que tu me falou pra usar funcionou, mas eu não entendi a diferença: no teu ele pega o retorno e transforma para string(por causa do <%= ), correto?
O que acontece é que o jsp é transformado numa página servlet. E o interpretador vai transformar <%=%> em ou out.print(); enquanto um <%%> vai simplesmente, no seu caso, chamar o método que não processa nada, só retorna uma String que não será enviada para lugar nenhum. Isso ( <%%> ) é usado para interações, como colocar um if ou um do, entre outras coisas.
abraços,
otávio
|
visite o blog da Riopro em:
http://blog.riopro.com.br
Aumente a capacidade de inovação na sua empresa usando o Zest:
http://zest.com.br
Conheça também:
http://votebolsa.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 15:48:19
|
otaviofcs
Virtual Machine Man
![[Avatar]](/images/avatar/2509e9380eb3623ef61046dcd190275d.jpg)
Membro desde: 21/12/2006 18:01:54
Mensagens: 511
Localização: Rio de Janeiro
Offline
|
Só pra completar. Se você estiver usando o tomcat e for na pasta:
[BASE_DO_TOMCAT]/work/Catalina/localhost/[SUA_APLICACAO]/org/apache/jsp/ vai ver suas jsp's transformadas em servlet. É um bom caminho para entender as diferenças.
|
visite o blog da Riopro em:
http://blog.riopro.com.br
Aumente a capacidade de inovação na sua empresa usando o Zest:
http://zest.com.br
Conheça também:
http://votebolsa.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 15:49:35
|
lance
JavaBaby
Membro desde: 28/03/2006 21:00:44
Mensagens: 81
Offline
|
Ah,
entendi.
Muito obrigado pela ajuda, foi muito útil.
Oscar
EDIT: estou usando weblogic e não tomcat, mas vou descobrir o diretório do weblogic que tem estes dados.
EDIT2: eu coloquei no request e etntei recuperar na próxima página, mas não funcionou. Retornou null, porém quando eu coloco na sessão ele funciona. Vou dar uma procurada para saber o porque.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2007 14:39:55
|
otaviofcs
Virtual Machine Man
![[Avatar]](/images/avatar/2509e9380eb3623ef61046dcd190275d.jpg)
Membro desde: 21/12/2006 18:01:54
Mensagens: 511
Localização: Rio de Janeiro
Offline
|
lance wrote:EDIT2: eu coloquei no request e etntei recuperar na próxima página, mas não funcionou. Retornou null, porém quando eu coloco na sessão ele funciona. Vou dar uma procurada para saber o porque.
Tente usar:
<jsp:useBean id="nomeDoObjetoNoRequest" class="java.lang.String" scope="request"/>
|
visite o blog da Riopro em:
http://blog.riopro.com.br
Aumente a capacidade de inovação na sua empresa usando o Zest:
http://zest.com.br
Conheça também:
http://votebolsa.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2007 15:58:33
|
lance
JavaBaby
Membro desde: 28/03/2006 21:00:44
Mensagens: 81
Offline
|
otaviofcs wrote:
lance wrote:EDIT2: eu coloquei no request e etntei recuperar na próxima página, mas não funcionou. Retornou null, porém quando eu coloco na sessão ele funciona. Vou dar uma procurada para saber o porque.
Tente usar:
<jsp:useBean id="nomeDoObjetoNoRequest" class="java.lang.String" scope="request"/>
É que eu estou usando o código dentro do javascript, então não dá para fazer isto. Resolvi o meu problema usando atributos hidden e setando os seus valores no javascript.
Obrigado
|
|
|
 |
|
|