簡體   English   中英

獲取JSP Servlet會話,返回空值

[英]Getting a JSP servlet session, returns a null value

我正在將jsp / servlet用於基本的ajax應用程序。 我正在設置與Servlet的會話,但返回的是null。 我的代碼片段如下:

Servlet:

protected void doPost(HttpServletRequest request, HttpServletResponse response)         throws  ServletException, IOException {

    String name=null;
    String sessionStrSet = null;


    if(request.getParameter("session").toString().equals("setSession")){

         name = request.getParameter("user");

         HttpSession session = request.getSession(true);
         session.setAttribute("sessionPw", name);
         sessionStrSet = session.getAttribute("sessionPw").toString();

         response.setContentType("text/plain");  
         response.setCharacterEncoding("UTF-8"); 
         response.getWriter().write(sessionStrSet + " " + "data write");

    }

    if(request.getParameter("session").toString().equals("getSession")){
        //how do i retrieve the session data here?
        response.setContentType("text/plain");  
        response.setCharacterEncoding("UTF-8"); 
        response.getWriter().write(sessionStrSet + "get session");
    }


}

Ajax可以正常工作,只是會話檢索似乎是一個問題。 一旦在第一個if()中設置了數據,就可以提取數據。 但是當我執行另一個發布請求時,它返回為null。 我需要另一個HttpSession嗎? 非常感謝任何幫助,我是PHP開發人員,而不是JSP,因此對我來說是個新手!

您是否真的需要單獨的if?

getSession(true)返回當前會話,如果沒有當前會話,則創建新會話。

請參見文檔http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletRequest.html#getSession%28boolean%29

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM