gpt4 book ai didi

java - 小程序请求不延长 session 实时

转载 作者:行者123 更新时间:2023-11-28 23:36:55 24 4
gpt4 key购买 nike

这是我的第一个问题,非常感谢任何能够提供帮助的人。

让我解释一下问题:
我有一个小程序,可以将文件分块上传到 servlet。
小程序的参数之一是 JSESSIONID,因此它可以创建一个 cookie 并在服务器上识别正确的 session (使用 wireshark 测试)。
对于发送的每个 block ,servlet 正在成功获取 session 。

问题是,在上传过程中, session 似乎没有得到延长。如果我(在应用程序“web.xml”中)将 session 超时配置为 5 分钟,则文件必须在小于该时间的时间内上传,否则 session 将被破坏并且上传将失败。
这很奇怪,因为 servlet 每隔几秒执行一次(并接受 session ID),我迷路了。

这是 web.xml 中的参数:

<session-config><session-timeout>5</session-timeout></session-config>

下一个代码(在 servlet 中)每隔几秒创建一次日志(对于每个 block )成功跟踪 session ID:

log.info("isRequestedSessionIdValid==> " + servletRequest.isRequestedSessionIdValid());
log.info("getSession==> " + (servletRequest.getSession(false) != null));
log.info("Requested session ID vs. actual session id: " + servletRequest.getRequestedSessionId() + "==" + servletRequest.getSession(false).getId());

我使用 tomcat 7.0.50 作为在集群中配置的 servlet 容器,具有 session 复制和 apache 2 作为前端,粘性 session 处于 Activity 状态。

预先感谢您的帮助。

问候,何塞

最佳答案

我的一个 friend 终于发现了发生了什么事。也许这可以帮助某人。

问题出在用于创建应用程序的框架 icefaces 上。 applet 被放置在 icefaces 页面上,但上传再次是标准的 servlet。 Icefaces 有一个用于他的页面的监视器,当没有请求该页面时,监视器最终会自行使底层 session 无效。

所以解决方案是从 servlet 中恢复 icefaces 监视器并“接触”它的 session 控制。

最好的问候,何塞

关于java - 小程序请求不延长 session 实时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23872307/

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