사용자가 브라우저를 새로 고침 할 때 홈 세션을 활성 상태로 유지하려면 어떻게해야합니까?페이지를 새로 고친 후 세션을 유지하는 방법
로그인 후에 홈 페이지 세션이 살아 있기 때문에. 그러나 브라우저를 새로 고침하면 다시 로그인 페이지로 돌아갑니다.
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
*
* @author Maxwell
*/
@WebFilter(filterName = "sessionFilter", urlPatterns = {"/*"})
public class sessionFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req1 =(HttpServletRequest)request;
HttpServletResponse res1 =(HttpServletResponse)response;
String session = (String)req1.getSession().getAttribute("pnumber");
String currentPath = req1.getRequestURL().toString();
if(session != null)
{
if(currentPath.contains("login.xhtml"))
{
res1.sendRedirect(req1.getContextPath()+"/home.xhtml");
System.out.println("it is nt empty");
}
else
{
chain.doFilter(request, response);
}
//System.out.println("it is nt empty");
}
else
{
if(currentPath.contains("home"))
{
res1.sendRedirect(req1.getContextPath()+"/login.xhtml");
System.out.println("somefin is wrong");
}
else
{
chain.doFilter(request, response);
}
//System.out.println("somefin is wrong");
}
}
@Override
public void destroy() {
}
}
사용자가 브라우저를 새로 고침 할 때 홈 세션을 유지하려면 어떻게해야합니까?
로그인 후에 홈 페이지 세션이 살아 있기 때문에. 그러나 브라우저를 새로 고침하면 다시 로그인 페이지로 돌아갑니다.
게시 된 코드에 ** ** ** jsf가 있습니다. 단지 서블릿 필터 – Kukeltje