gpt4 book ai didi

java - 无法在java servlet中获取 session

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:18:59 26 4
gpt4 key购买 nike

我是第一次使用 servlet,但我取得了很大进步。我的 servlet 运行良好。所以我决定放置一个身份验证机制,如果用户提供正确的密码和 ID,它会创建一个 session 。但是 session 对我来说是全新的。所以我不太理解逻辑,但我已经开始理解了。

正如我之前提到的,我的一个 servlet 专门用于登录。如果密码正确,则会创建一个 session (我不会在 session 中存储任何对象/数据)并通知客户端(remoteUser)密码已被接受并创建 session 。客户端所做的是访问同一应用程序中的任何其他 servlet。其他 servlet 获取 session 以检查它是否已创建且有效(未超时)。为此,在其他那些 servlet 中,我通过以下方式获得 session :

HttpSession session = req.getSession(false); //false because this is not the place to create a session. sessions should only be created in the login servlet.

但这会返回一个空值。所以我尝试过:

HttpSession session = req.getSession();

并检查了 session.isNew();我是一个新的 session 。所以我在登录 servlet 中创建的 session 不能用 req.getSession() 调用;在另一个 servlet 中。

PS:在登录servlet中创建session时:session.setMaxInactiveInterval(300);//5 分钟

非常感谢您的回复!

最佳答案

使用 Google App Engine 时,您必须专门启用 session 支持。参见 http://code.google.com/appengine/docs/java/config/appconfig.html#Enabling_Sessions .

关于java - 无法在java servlet中获取 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6874091/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com