Dae galera!! blz?
to ralando aqui pra fazer com que após o login do usuário, a sessao eh criada, e enquanto o cara navega pra lah e pra ca no meu site e na net, eu consiga verificar se ele já naum está mais no site, fechou o browser ou ateh msm desligou o pc.
Depois que eu verifico q o timeout esgotou, chamo Pagina.jsp, passando uma variavel como parametro.
To usando somente JSP, com a excessão dessa classe HttpSessionListener!
ai vai o q implementei… a classe HttpSessionListener:
[code]//VERIFICA AS SESSÕES INATIVAS E CHAMA ‘Pagina.jsp’
import java.io.*;
import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.HttpSessionEvent;
public class Sessoes implements HttpSessionListener {
//Evento de invalidação de sessão
public void sessionDestroyed (HttpSessionEvent se) {
HttpSession s = getSession();
String variavel = (String) s.getAttribute(“variavel”);
%>
<html>
<jsp:forward page="Pagina.jsp">
<jsp:param name="variavel" value=’<%=variavel%>’ />
</jsp:forward>
</html>
<%
}
public HttpSession getSession() {
HttpSession se = request.getSession(false);
return se;
}
}
[/code]
tbm adicionei no meu web.xml na pasta WEB-INF o seguinte:
<listener>
<listener-class>
(nome do meu arkivo .java que implementa o HttpSessionListener)
</listener-class>
</listener>
O QUE TEM DE ERRADO!??!
Tente inserir no web.xml sem o .java
sim, claro… o nome do arquivo sem o .java!
agora fui tentar compilar o código q tinha postado na msg anterior, mas usando o javac deu varios erros!
ele naum tah reconhecendo as tags do html…
será q eu naum tenho fazer com q a minha classe extenda HttpServlets, e faça um doGet, algo como abaixo?
[code]package Projeto;
import java.io.;
import java.net.;
import java.util.;
import java.lang.;
import javax.servlet.;
import javax.servlet.http;
import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.HttpSessionEvent;
public class Sessoes extends HttpServlet {
class SessionTimeoutNotifier implements HttpSessionListener {
public void sessionDestroyed (HttpSessionEvent se) {
HttpSession s = getSession();
String variavel = (String) s.getAttribute("variavel");
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
res.setContentType ("text/html");
PrintWriter out = res.getWriter();
out.println("<html>");
out.println(" <jsp:forward page=\"Pagina.jsp ? 'variavel' = variavel\">");
out.println(" <jsp:param name=\"variavel\" value='<%=variavel%>' />");
out.println(" </jsp:forward>");
out.println("</html>");
}
}
public HttpSession getSession() {
HttpSession se = request.getSession(false);
return se;
}
}
}[/code]
Agradeço desde já a ajuda!!!
Cara Adiciona out.flush(); e out.close();