Sesión en el servlet de Java

votos
20

Me gustaría hacer el programa servlet para el siguiente, crear un servlet nombrado com.SessServlet.If que está accediendo al servlet en un nuevo navegador a continuación, por primera vez, se debe mostrar 'Bienvenido, recién llegado'. Cuando se actualiza la misma página debe display'Welcome Volver. Usted está visitando la página para <no of times you have refreshed the page>' .

`package com.SessServlet122;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SessServlet extends HttpServlet
{

public void service(HttpServletRequest req,HttpServletResponse res)throws ServletException,IOException
{
    res.setContentType(text/html);
    int i;
    PrintWriter pw=res.getWriter();
    HttpSession hs=req.getSession();
    i=0;
    if(hs.isNew())
    {

        pw.println(Hello:::+i);
    }
    else
    {    i++;
        pw.println(Welcome Back:Ur entry count is::::+i);
    }

    pw.close();
}
}`

Sin embargo, este código no está funcionando correctamente. ¿Cómo resolver esto? Gracias por adelantado.

Publicado el 15/04/2011 a las 08:16
por usuario
En otros idiomas...                            


2 respuestas

votos
1

Debe almacenar ese contador como sessionVariable, de esa manera se conseguirá que funcione.
Es necesario esta línea después de su pw.close();llamada:

hs.setAttribute("counter", i);

Además, la inicialización de su contador idebe tener este aspecto:

Integer i = (Integer)hs.getAttribute("counter");
if (i == null)
    i = 0;
Respondida el 15/04/2011 a las 08:20
fuente por usuario

votos
1

Insinuación:

  • Crear un servlet
  • Desde service()método de recuperar la sesión y establecer un atributo de sesión si está allí otro conjunto ans mensaje apropiado pantalla
  • En uso JSP JSTL para mostrar el contador, por ejemplo: si se establece el atributo era HitCount entonces en uso JSP ${hitCount}
Respondida el 15/04/2011 a las 08:21
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more