代码之家  ›  专栏  ›  技术社区  ›  AndreaNobili

为什么我无法检索放入Java HttpSession中的对象?

  •  1
  • AndreaNobili  · 技术社区  · 11 年前

    我将一个对象放入 会话 通过该行:

    req.getSession().setAttribute("docPDF", docPDF);
    

    所以上一行在会话中 文档PDF 对象(它是 字节数组输出流 实例)的名称 文档PDF .

    如果在调试器中执行以下操作:

    req.getSession().getAttribute("docPDF")
    

    我可以看到这个物体,所以它似乎被正确地放入 会话 .

    然后,在我的类的另一个方法中,我必须检索它,所以我尝试了这样的方法:

    docPDF = (ByteArrayOutputStream) req.getAttribute("docPDF");
    

    但问题是我得到了 文档PDF 对象是 无效的 .

    为什么?我错过了什么?也许这取决于这是另一个HttpRequest?

    如何正确检索我放入会话的对象?

    谢谢

    1 回复  |  直到 11 年前
        1
  •  4
  •   Selvaraj    11 年前

    如果在会话中设置对象,则只能从会话中获取。 使用此代码。

    docPDF = (ByteArrayOutputStream) req.getSession().getAttribute("docPDF")