问题:在J2EE应用中。发如今自己定义标签中取不到session:

HttpSession session = pageContext.getSession();

你会发现session的值可能是空的。

原因:在标签所在的JSP页面中禁用了Session,见红色字体部分,比如以下是一个JSP页面头的声明:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"session="false"%>

若在这个页面内包括有一个自己定义标签,这在自己定义标签中session不能获取到:

   public int doStartTag() throws JspException {

        try {

            HttpSession sess = pageContext.getSession();



        //下面内容略   

  }

附:JSP内置对象映射表

对象名

类型

作用域

request

javax.servlet.ServletRequest

Request

response

javax.servlet.ServletResponse

Page

pageContext

javax.servlet.jsp.PageContxt

Page

session

javax.servlet.http.HttpSession

Session

application

javax.servlet.ServletContext

Application

out

javax.servlet.jsp.JspWriter

Page

config

javax.servlet.ServletConfig

Page

page

java.lang.Object

Page

exception

java.lang.Throwable

Page

pageContext 获取Session 为null原因的更多相关文章

  1. asp.net 验证码session为null的解决方案

    最近在做Y集团的订单系统时,登陆页面在测试时发现一个以前没有注意到的问题,登陆页面需要使用验证码,引用了一个生成验证码的aspx页面,在aspx页面中生成session和验证码图片,在登陆页面的后台处 ...

  2. 有关获取session属性时报nullPointException(空指针异常)的解决方案

    一般我们在从session中获取数据时,需要先进行赋值,也就是必须先进行session.setAttribute(String,Object)方法进行赋值,然后我们才能从session中获取内容,但是 ...

  3. 解决在构造函数中使用Session,Session为null的问题

    问题描述: public abstract class PageBase : System.Web.UI.Page 在PageBase中如何使用Session??? 我直接用 Session[&quo ...

  4. spring boot集成shiro-redis时,分布式根据seesionId获取session报错排查总结

    昨天在集成shiro-redis的时候,使用sessionId在其他微服务获取用户的session时,发生错误:There is no session with id [xxx]. 查遍了所有资料,基 ...

  5. Java通过sessionId获取Session

    Servlet2.1之后不支持SessionContext里面getSession(String id)方法. 但是,我们可以通过HttpSessionListener监听器和全局静态map自己实现一 ...

  6. java根据sessionid获取session

    import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpSession; /** * * Class ...

  7. 如何解决设置Session保存在StateServer后引起WebService/WebMethod无法异步获取Session

    项目中有一个文件上传功能,需要显示文件上传进度.于是使用PageMethods 调用WebService/WebMethod . 在demo中测试一切正常.但是转移到项目中之后无法异步刷新文件上传进度 ...

  8. spring MVC 如何获取session并实现传值到前台

    后台获取session: @RequestMapping("/usrlogin") public ModelAndView usrlogin(@RequestParam Strin ...

  9. SQLServer中使用扩展事件获取Session级别的等待信息以及SQLServer 2016中Session级别等待信息的增强

    本文出处:http://www.cnblogs.com/wy123/p/6835939.html 什么是等待 简单说明一下什么是等待:当应用程序对SQL Server发起一个Session请求的时候, ...

随机推荐

  1. 核武器代理CC工具V3.42最新版本!

    软件说明 !!!有新版本更新,请移步到更新地址:https://www.cnblogs.com/cnhacker/p/10878688.html ########################### ...

  2. KMP中next数组的理解与应用

    理解 1.next数组一直往前走 next数组一直往前走,得到的所有前缀也是当前主串的后缀,当然了,也是当前主串的前缀. 2.周期性字符串 1.周期性字符串$\Leftrightarrow n \,\ ...

  3. CAD交互绘制虚线(com接口)

    用户可以在控件视区任意位置绘制直线. 主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE dY ...

  4. 第3节 mapreduce高级:7、自定义outputformat实现输出到不同的文件夹下面

    2.1 需求 现在有一些订单的评论数据,需求,将订单的好评与差评进行区分开来,将最终的数据分开到不同的文件夹下面去,数据内容参见资料文件夹,其中数据第九个字段表示好评,中评,差评.0:好评,1:中评, ...

  5. Spring boot 配置tomcat后 控制台不打印SQL日志

    在pom.xml中配置tomcat启动处加上: <dependency> <groupId>org.springframework.boot</groupId> & ...

  6. 循环中i++和++i哪个好

    推荐使用++i,因为不需要返回临时对象,执行效率更高.

  7. 在SpringBoot框架中使用拦截器

    1.继承WebMvcConfigureAdapter类,覆盖其addInterceptors接口,注册我们自定义的拦截器 package com.eth.wallet.config; import c ...

  8. win10下硬盘安装CentOS7

    安装环境: 1.系统:Windows 10 2.硬盘:SSD(已装好Win 10) + HHD(用来装CentOS 7) 准备工作: 1.DiskGenius(分区工具):用来给硬盘做分区: 2.系统 ...

  9. PHP 数组使用之道

    本文首发于 PHP 数组使用之道,转载请注明出处. 这个教程我将通过一些实用的实例和最佳实践的方式列举出 PHP 中常用的数组函数.每个 PHP 工程师都应该掌握它们的使用方法,以及如何通过组合使用来 ...

  10. UVa 1600 Patrol Robot(BFS)

    题意: 给定一个n*m的图, 有一个机器人需要从左上角(1,1)到右下角(n,m), 网格中一些格子是空地, 一些格子是障碍, 机器人每次能走4个方向, 但不能连续穿越k(0<= k <= ...