0

这是我缺少的一小部分,我准备好了其余的查询,但它们都不起作用,因为当我尝试将属性保存到 servlet 时,它不起作用。

    // used a form in a JSP
    // retrieved the data from the session same as
    // accion=request.getParameter("accion"); no errors there
    // used to query sql server to check if exist

    if(usuario!=null){

            // i dont know why but here is the problem

            HttpSession session= request.getSession(); // tried with (false)
            Usuario user =usuario;                     // same error
            session.setAttribute("usu",user);

            //Retrieval test
            Usuario test=(Usuario)request.getAttribute("usu");

            if(test!=null){
                    out.println("User != null");
            }else{
                    out.println("User == null");
            }

            //output is "User == null" and cant figure out why

            //response.sendRedirect("./intranet/adminLogin.jsp?logged=1");
    }

如果在 JSP 中我检查一个会话(重定向后),它也没有一个

    if(request.getSession(false)==null){
            out.println("#info there is no session <br />");
    }else{
            out.println("#info there is a session <br />");
    }
    // 

我需要解决这个问题,所以我无法解决所有需要会话的问题。

4

1 回答 1

3

您的检索测试代码正在从请求中获取属性。那是与会话不同的对象。

代替:

    Usuario test=(Usuario)request.getAttribute("usu");

和:

    Usuario test=(Usuario)session.getAttribute("usu");
于 2013-11-05T18:32:02.770 回答