Pessoal, estou com um problema ao enviar dados de uma página para outra. Acontece que tenho uma aplicação em JSP na qual eu preciso enviar alguns atributos de uma página para outra. Estou utilizando o seguinte comando: <form name="form1" align="center" method="post" action="teste.jsp?usuario=<%=usuario%>">
<input type="submit" align="center" name="Submit2" value="Voltar">Para que ao retornar a página anterior eu possa retornar o valor de “usuario”, só que este valor aparece na aba de endereços. Ocorre que preciso mandar este valor praticamente em todas as telas que tenho, para que com o request.getParameter de outra tela eu recupere o seu valor. Gostaria de ver se alguém poderia me ajudar com algum comando ou alguma maneira de enviar uma variável de uma página para outra sem que a mesma aparecesse na barra de endereços e nem ao clicar com o botão direito em exibir código fonte.
Dúvida ao enviar variáveis de uma página para outra
6 Respostas
sete esse dado na session ou application se necessário. Ex:
<%
// para setar
session.setAttribute( "usuário", seuUsuario );
// para recuperar, caso seja um objeto Usuario
Usuario usuario = (Usuario) session.setAttribute( "usuário" );
// caso seja uma String mesmo...
String usuario = (String) session.setAttribute( "usuário" );
%>
sete como um atributo na sessão !!!
flw!
Valeu pessoal, funcionou. Estou utilizando o <form name="form1" method="post" action="cadsat.jsp">
<%session.putValue("usuario",usuario);
%>Para enviar de uma página para outra e oString usuario = "";
usuario = String.valueOf(session.getValue("usuario"));para recuperar na outra página.
Só que testei a mesma coisa com uma variável que está da seguinte maneira:<form name="form1" method="post" action="teste.jsp?consulta=aberto">
<td align=left><input type="submit" name="Submit2" value="Abertos"><td>
Tentei fazer com <form name="form1" method="post" action="teste.jsp">
<td align=left><input type="submit" name="Submit2" value="Abertos"><td>
<%session.putValue("consulta","aberto");, mas não consegui fazer funcionar. Agradeço se alguém puder me indicar onde estou errando ou se existe alguma outra maneira de enviar esta string.
o metodo ‘putValue()’ esta obsoleto (deprecated). No seu lugar utilize o ‘setAttribute()’
Tentei fazer com:
<form name="form1" method="post" action="teste.jsp">
<td align=left><input type="submit" name="Submit" value="Em atendimento"></td>
<%session.putValue("usuario",usuario);
session.setAttribute("consulta", "atendimento");
%>
</form>
E na outra página capturar com:
String consulta = "";
consulta = String.valueOf(session.getAttribute("consulta"));
Mas não funcionou. Agradeço se alguém puder me dar um exemplo de como fazer isto ou me indicar onde estou errando.
É simples. Teste isto:
foo.jsp
<%
session.setAttribute( "key", "PortalJava.com" );
%>
<a href="bar.jsp">click me</a>
bar.jsp
Atributo da sessão: <%= session.getAttribute( "key" ) %>