import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class SessionExample extends HttpServlet
{
    public void doPost( HttpServletRequest req, HttpServletResponse res )
    {
        doGet( req, res );
    }
    
    public void doGet( HttpServletRequest req, HttpServletResponse res )
    {
        String name;
        
        PrintWriter out = null;
        HttpSession session = req.getSession( true );
        
        try
        {
            name = req.getParameter( "user" );
            
            if( name == null || name.equals( "" ) )
            {               
                name = (String) session.getValue( session.getId( ) );
            }
            else
            {
                if( "on".equals( req.getParameter( "autolog" ) ) )
                {
                    session.putValue( session.getId( ), name );
                }
                else
                    session.removeValue( session.getId( ) );
            }
            
            if( name == null || name.equals( "" ) )
            {
                   res.sendRedirect( "http://localhost:8080/sessionlogin.html" );
                   return;
            }
                    
            res.setContentType( "text/html" );
            out = res.getWriter( );
            
            out.println( "Welcome " + name );
            out.close( );
        }
        catch( IOException e )
        {
            // not much to do! Can't write back.
        }
    }
}
