首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果已登录,则从login.jsp重定向

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

Stack Overflow用户
提问于 2010-02-23 21:20:31
回答 1查看 3.4K关注 0票数 3

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

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-02-23 21:27:59

一种常见的做法是使用Filter。只需实现javax.servlet.Filter,在web.xml中定义它,将其映射到/login.jspurl-pattern上,然后在doFilter()方法中编写类似以下内容:

代码语言:javascript
复制
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已按照正常做法放入会话范围。

也就是说,<navigation-rule>是特定于JSF的,但是您在问题中没有说明任何关于JSF的内容,也没有说明标签。你不是把事情搞乱了吗?

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2318374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档