Java 在JSP页面中导航时无法检索会话属性

Java 在JSP页面中导航时无法检索会话属性,java,jsp,jsp-tags,Java,Jsp,Jsp Tags,我正在使用eclipse juno和apache服务器。我有3个页面: jsp(然后将此页面重定向到servlet(Validation.java)进行登录身份验证,如果有效,则导航到search.jsp) search.jsp fill.jsp 我在Validation.java中设置了会话变量的值,如下所示 字符串s_user=request.getParameter(“n_user”) HttpSession session=request.getSession(true) sessi

我正在使用eclipse juno和apache服务器。
我有3个页面:

  • jsp(然后将此页面重定向到servlet(Validation.java)进行登录身份验证,如果有效,则导航到search.jsp)
  • search.jsp
  • fill.jsp

    我在Validation.java中设置了会话变量的值,如下所示
    
    字符串s_user=request.getParameter(“n_user”)
    HttpSession session=request.getSession(true)
    session.setAttribute(“ses_用户”,s_用户);


    打印值如下:
    
    String s=(String)session.getAttribute(“ses_用户”);
    系统输出打印项次;
    

    并在每页上打印会话值,但每次我浏览这些页面时,都会创建新的会话ID
我已经查过了

System.out.println("session ID"+request.getSession(false));
为什么我没有得到相同的会话ID,也没有得到相同的会话ID的原因


login.jsp:

<form name="loginform" method="post" action="Validation"  >
    <br><br>
    <table width="300px" align="center" style="background-color:#C1CDCD;">
        <tr><td colspan=2></td></tr>
        <tr><td colspan=2> </td></tr>
        <tr>
         <td><b><font color="#00008B">Login Name</font></b></td>
         <td><input type="text" name="n_user" value=""></td>
        </tr>
        <tr>
            <td><b><font color="#00008B">Password</font></b></td>
            <td><input type="password" name="n_pass" value=""></td>
        </tr>

        <tr>
                <td></td>
                <td><input type="submit" name="Submit" value="Submit" onclick="return validate()"></td>
        </tr>
        <tr> <td colspan=2> </td></tr>
    </table>


</form>



登录名 密码
您应该只使用不带布尔参数的
HttpSession session=request.getSession()

session=request.getSession()
session=request.getSession(true)
System.out.println(“会话ID”+(字符串)(request.getSession().getAttribute(“SEU用户”))相同


您将在会话中获得属性值集
SessionId
已更改,因为在验证后您创建了新会话。

我认为您需要获取会话用户而不是会话id@MohammodHossain:是,我想检索会话值。您能显示您的html代码吗?您的浏览器中是否禁用了Cookie?我也这样做了,但无法在fill.jsp或上检索会话值search.jspare是否确实,s_用户不为空?添加我只在我的login.jsp中添加了这个。但仍然是相同的问题。我对fill.jsp没有太多了解,但是我jst打印用户的会话值有什么问题?。。。它将为每个登录的新用户创建新会话。它将为每个新用户创建新会话。另外,请查看您的浏览器中是否禁用了cookie i已检查默认浏览器设置,并已启用我的cookie..nt no Hopee此
String s=(String)session.getAttribute(“SEU用户”)的输出是什么;系统输出打印项次此选项。。它显示正确..bt如果我在search.jsp或fill.jsp上打印它,则打印为空
     //set session  
    HttpSession session=request.getSession(true);
    session.setAttribute("ses_user",s_user); 

        // get session

  String userid = (String)session.getAttribute("ses_user");
if(userid  != null){
// do something
}