You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by "Moreno Quiñones, Patricia" <pa...@accio.com> on 2003/01/20 18:47:36 UTC

Timeout Sesion

Hola, tengo una pregunta acerca de la caducidad de sessiones de tomcat.
Si pongo el sihuiente código en un .jsp:
<%

session.setMaxInactiveInterval( 1 );   

 out.println("<html>" +
      "<head><title>Session Information</title></head>" +
      "<body bgcolor=\"#FFFFFF\">" +
      "<h1>Session Information</h1><table>");
    out.println ("<tr><td>Identifier</td>");
    out.println ("<td>" + session.getId() + "</td></tr>");
    out.println ("<tr><td>Created</td>");
    out.println ("<td>" + new Date(session.getCreationTime()) +
"</td></tr>");
    out.println ("<tr><td>Last Accessed</td>");
    out.println ("<td>" + new Date(session.getLastAccessedTime()) +
"</td></tr>");
    out.println ("<tr><td> session.getMaxInactiveInterval()???</td>");
    out.println ("<td>" +  session.getMaxInactiveInterval() +
"</td></tr>");
    
     out.println ("<tr><td>New Session?</td>");
    out.println ("<td>" + session.isNew() + "</td></tr>");
    Enumeration names = session.getAttributeNames();
    while ( names.hasMoreElements() ) {
      String name = (String) names.nextElement();
      out.println ("<tr><td>" + name + "</td>");
      out.println ("<td>" + session.getAttribute(name) + "</td></tr>");
    }
    out.println("</table></center></body></html>");
 if(session==null){
	out.println("engine: session expired !!! What to do ?");
}
else{	
	if(session.isNew()){	 
	         out.println("engine: session control. Session expired
!!!!!! getLastAccessedTime() = "+session.getLastAccessedTime());

 response.sendRedirect("http://www.google.com");

	}else{
		System.out.println("\n\n.....NNNOOOisNew(), session
control. Session still alive ...");
		out.println("\ncontrol. Session still alive
...getLastAccessedTime() = "+session.getLastAccessedTime());	
	}
}

%>
pues al cabo de unos de segundos de entrar el ese .jsp, si actualizo, la
sesión ha caducado, pero me gustaría que el tiempo se pudiese controlar
desde la etiqueta 
<session-config> 
  <session-timeout>1</session-timeout>
</session-config>
del web.xml, pero eso no me funciona así, si uso la etiqueta en el
web.xml, al recoger mel getMaxInactiveInterval,
vale...session.getMaxInactiveInterval()= -1
qué puedo hacer para configurar el timeout de tomcat desde el web.xml,
qué le falta a mi código???
además usando "session.setMaxInactiveInterval( 1 );   ", no me caduca al
segundo, sinó que al cabo de varios segundos!!

Gracias, Patricia

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Timeout Sesion (spanish answer, excuse me!!)

Posted by Eloy Lafuente <st...@si.unirioja.es>.
> pues al cabo de unos de segundos de entrar el ese .jsp, si actualizo, la
> sesión ha caducado, pero me gustaría que el tiempo se pudiese controlar
> desde la etiqueta
> <session-config> 
> <session-timeout>1</session-timeout>
> </session-config>
> del web.xml, pero eso no me funciona así, si uso la etiqueta en el
> web.xml, al recoger mel getMaxInactiveInterval,
> vale...session.getMaxInactiveInterval()= -1
> qué puedo hacer para configurar el timeout de tomcat desde el web.xml,
> qué le falta a mi código???
> además usando "session.setMaxInactiveInterval( 1 );   ", no me caduca al
> segundo, sinó que al cabo de varios segundos!!
>
Pues yo tengo puesto un timeout de 120 en el web.xml y en
session.getMaxInactiveInterval() me sale 7200 (lo cual es correcto).

Seguro que tienes bien escrito el web.xml? Debería ser:

  <session-config>
    <session-timeout>
            120
        </session-timeout>
  </session-config>

Y sobre lo de que le cueste más de 1 segundo desecharte la sesión, puede ser
por los mecanismos de detección de expiración de sesiones de Tomcat, que se
ejecutan periódicamente, pero no continuamente por lo que puede haber
retrasos.

No se si esto te solucionará el problema. Un saludo y encantado de hablar
con alguien en castellano en la lista.

Un saludo.


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>