如果已经登录,则从login.jsp重定向

时间:2010-02-23 13:20:31

标签: jsp redirect login

如果注册用户跳转到login.jsp,我希望将其重定向到youAreLoggedIn.jsp。 这可以用<navigation-rule>制作吗?我知道如何在PHP中执行此操作,但不在JSP中执行此操作。 当用户访问login.jsp时,必须检查用户是否已登录,我知道如何检查。但是如何触发这个动作呢?我应该制作一个新的servlet还是什么?

谢谢!

1 个答案:

答案 0 :(得分:5)

通常的做法是使用Filter。只需实施javax.servlet.Filter,在web.xml中进行定义,将其映射到url-pattern的{​​{1}},然后在/login.jsp方法中写下以下内容:

doFilter()

这很简单。它当然假定已按照正常做法将已登录的if (((HttpServletRequest) request).getSession().getAttribute("user") != null) { // User is logged in, redirect to desired page. ((HttpServletResponse) response).sendRedirect("youAreLoggedIn.jsp"); } else { // Do nothing, continue request. chain.doFilter(request, response); } 放入会话范围。

那就是说,User是特定于JSF的,但你没有在你的问题和标签中陈述任何关于JSF的内容。你不是在混淆事情吗?