为什么我无法检索放入 Java 中的 HttpSession 的对象?
Why I can't retrieve an object put into the HttpSession in Java?
进入一个方法我通过这一行将对象放入 HttpSession:
req.getSession().setAttribute("docPDF", docPDF);
所以上一行将 docPDF 对象(它是一个 ByteArrayOutputStream 实例)放入会话中,名称为 docPDF.
如果在调试器中我这样做:
req.getSession().getAttribute("docPDF")
我可以看到这个对象,所以它似乎正确地放入了 HttpSession。
然后,进入我的另一个方法 class 我必须检索它,所以我尝试这样:
docPDF = (ByteArrayOutputStream) req.getAttribute("docPDF");
但问题是我得到 docPDF 对象是 null.
为什么?我缺少什么?也许这可能取决于这是另一个 HttpRequest 的事实?
如何正确检索我放入会话中的对象?
谢谢
如果您在 Session 中设置对象,则必须仅从 Session 获取。
使用此代码。
docPDF = (ByteArrayOutputStream) req.getSession().getAttribute("docPDF")
进入一个方法我通过这一行将对象放入 HttpSession:
req.getSession().setAttribute("docPDF", docPDF);
所以上一行将 docPDF 对象(它是一个 ByteArrayOutputStream 实例)放入会话中,名称为 docPDF.
如果在调试器中我这样做:
req.getSession().getAttribute("docPDF")
我可以看到这个对象,所以它似乎正确地放入了 HttpSession。
然后,进入我的另一个方法 class 我必须检索它,所以我尝试这样:
docPDF = (ByteArrayOutputStream) req.getAttribute("docPDF");
但问题是我得到 docPDF 对象是 null.
为什么?我缺少什么?也许这可能取决于这是另一个 HttpRequest 的事实?
如何正确检索我放入会话中的对象?
谢谢
如果您在 Session 中设置对象,则必须仅从 Session 获取。 使用此代码。
docPDF = (ByteArrayOutputStream) req.getSession().getAttribute("docPDF")