Rickyrock
Rickyrock

Reputation: 328

Jsp session & Rediretion

I am new in jsp. I am trying to do redirection to login page when expire the session.

My code:

String sessionUser = null;
sessionUser = session.getAttribute("UserName").toString();
if(sessionUser == "" || sessionUser == null)
{
    System.out.println("In login");
    response.sendRedirect("login.jsp");
}
else
{
    System.out.println("out login");
}

in above code i get error in line of

sessionUser = session.getAttribute("UserName").toString();

Error

HTTP Status 500 - An exception occurred processing JSP page

How can i do this?

Upvotes: 2

Views: 885

Answers (1)

AllTooSir
AllTooSir

Reputation: 49372

From the error message and your description it seems you have written this code in JSP :

sessionUser = session.getAttribute("UserName").toString();

The above line can throw error if session is null or session doesn't have a UserName attribute .It is bad practice to write scriptlets in JSP.

You need to use a Filter to do anything closer to what you intend to do :

// Do not create session if it doesn't exist
HttpSession session = request.getSession(false);
// check if session is null
if(session != null) {
     chain.doFilter(request, response);
} else {
     // redirect to login page
     response.sendRedirect("/login.jsp");
}

You can implement HttpSessionListener to listen to the session invalidation event. But a Listener is not a good choice here , because it is not tied to a request.

Upvotes: 2

Related Questions