我有一个处理多部分表单的Servlet。该帖子实际上是由嵌入在页面中的Flash文件上传组件进行的。在某些浏览器中,Flash生成的POST不包含JSESSIONID,这使我无法在帖子期间从会话中加载某些信息。

Flash上​​传组件在特殊表单字段中包含Cookie和会话信息。使用此表单字段,我可以实际检索JSESSIONID值。问题是,我不知道如何使用这个JSESSIONID值手动加载该特定的会话。

编辑 – 基于ChssPly76的解决方案,我创建了以下HttpSessionListener实现:

@Override

public void sessionCreated(final HttpSessionEvent se) {

final HttpSession session = se.getSession();

final ServletContext context = session.getServletContext();

context.setAttribute(session.getId(), session);

}

@Override

public void sessionDestroyed(final HttpSessionEvent se) {

final HttpSession session = se.getSession();

final ServletContext context = session.getServletContext();

context.removeAttribute(session.getId());

}

它将所有会话添加到ServletContext作为其唯一ID所映射的属性。我可以在上下文中放置一个会话映射,但似乎是多余的。请对此决定发表任何想法。接下来,我将以下方法添加到我的servlet中以通过id来解析会话:

private HttpSession getSession(final String sessionId) {

final ServletContext context = getServletContext();

final HttpSession session = (HttpSession) context.getAttribute(sessionId);

return session;

}

java jsessionid 会话,如何使用JSESSIONID手动加载Java会话?相关推荐

  1. 手动加载spring配置文件

    更多Java架构师核心资料持续更新中https://github.com/kepeihong/data.git,内推阿里请查看链接 手动加载Spring配置文件有两个类,分别是ClassPathXml ...

  2. AngularJS之手动加载模块app和controller

    AngularJS之手动加载模块app和controller 转载于:https://www.cnblogs.com/baobaodong/p/5157256.html

  3. Java 错误: 找不到或无法加载主类,问题集合

      正确编译命令: javac Hello.java 正确运行命令: java Hello 错误1:H:\code>java Hello.java 错误: 找不到或无法加载主类 Hello.ja ...

  4. sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中...

    sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中 假设有一场景1001.unity,,manifest文件如下: ...

  5. java错误 找不到或无法加载主类

    java:错误: 找不到或无法加载主类 1.确定JDK版本 ​ 因为随着时间的改变,JDK本身也伴随着更改和变化,在解决这个问题前,我们要确定一下jdk的版本,比较老的版本有老的版本的解决方法,比较新 ...

  6. java加载并运行虚拟机_《深入理解Java虚拟机》- Java虚拟机是如何加载Java类的?...

    Java虚拟机是如何加载Java类的?  这个问题也就是面试常问到的Java类加载机制.在年初面试百战之后,菜鸟喜鹊也是能把这流程倒背如流啊!但是,也只是字面上的背诵,根本就是像上学时背书考试一样. ...

  7. 手动加载spring, ApplicationContext怎么销毁

    手动加载spring, ApplicationContext怎么销毁 AbstractApplicationContext context = new ClassPathXmlApplicationC ...

  8. 【Kissy WaterFall】实行手动加载数据

    前言:由于Kissy WaterFall默认是监听滚动事件来实现数据动态加载的,但是有一些情况要用到手动加载数据.以下是使用Kissy WaterFall实现手动加载数据的方法. 最终实现效果:点击& ...

  9. java 类加载生命周期_Java类的加载与生命周期

    一.概要: 类的生命周期从类的 加载.连接.初始化 开始,到类的 卸载结束: 二.几个阶段: 加载:查找并加载类的二进制数据.(把类的.class文件的二进制数据读入内存,存放在运行时数据区的方法区: ...

最新文章

  1. : error c2062: 意外的类型“int”_Go 命令行解析 flag 包之扩展新类型
  2. 资源 | Hinton、LeCun、吴恩达......不容错过的15大机器学习课程都在这儿了
  3. spring jpa mysql集群_Spring Boot系列之十四 JPA 连接mycat
  4. 北方股份无人驾驶矿卡_踏歌智行携手北方股份10台无人驾驶新车批量投产 | 合创投资...
  5. 识别图片并可视化_识别交通锥,特斯拉驾驶信任提升的一小步
  6. 018.Zabbix维护时间和模板导入
  7. 私活利器,docker快速部署node.js应用
  8. TechWorld2021技术嘉年华,解锁“不一样”的技术盛会
  9. linux 运行ca.crt,linux下使用openssl生成 csr crt CA证书,opensslcsr
  10. ajax通用格式 jquery版本
  11. Relatives POJ - 2407(不打表的欧拉函数 单求)
  12. [RL] 使用 dockerfile 构建 atari 环境
  13. html转换markdownpad,GitHub - negrochn/markdownpad2_toc: MarkdownPad2导出HTML支持[TOC]
  14. 曲线运动与万有引力公式_高中物理必修一知识点总结:曲线运动万有引力
  15. Linux驱动学习--V4L2设备(二)subdev的ops介绍及media framework深入解析
  16. EUV光刻技术如何为功率半导体提供动力
  17. 第2关:求五边形的面积
  18. python+django电子招标投标管理系统pycharm项目
  19. Oracle存储过程语法和基本使用
  20. 网站建设学习(十四)——XML介绍及语法

热门文章

  1. 楼宇计算机网络是如何工作的,【干货】建筑楼宇智能化如何应用 4C 技术
  2. pythonjava app切出后无网络连接_Python爬虫爬资源时由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。怎么破?...
  3. python图片识别是否p过_Python+Opencv进行识别相似图片
  4. 陕西省高等数学竞赛_关于参加“陕西高校第十二次大学生高等数学竞赛”的通知...
  5. jquery 数组indexof_如何实现一个简化版的 jQuery
  6. 2018.09.28 hdu5434 Peace small elephant(状压dp+矩阵快速幂)
  7. 20165237 2017-2018-2 《Java程序设计》第1周学习总结
  8. http协议的各类状态码
  9. C提高_day03_作业第三题
  10. hdu 4578 Transformation(线段树)