在自定义TagLib扩展TagSupport中,Session为null

时间:2012-01-25 10:41:43

标签: jsp java-ee portlet jsp-tags httpsession

我正在尝试在portlet应用程序中使用自定义taglib。

portlet使用Spring MVC Portlet,但我不认为这与此相关。

标签扩展了TagSupport。它尝试使用pageContext.getSession()获取HttpSession,但它返回null,导致后面的代码中出现NullPointerException。

public class keyboard extends TagSupport {

    public int doStartTag() {
        ...
        HttpSession session = pageContext.getSession();
        ...
        session.setAttribute("sesKeyboad", keyboard); // <-- NullPointerException
    }
}

我不应该修改taglib,它已经在另一个portlet中工作了。 知道为什么HttpSession没有在pageContext中初始化?

1 个答案:

答案 0 :(得分:2)

包含关联标记的JSP可能正在使用page指令并将其session属性设置为false