我正在使用jsp / servlets作为基本的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,所以它对我来说是新的!
答案 0 :(得分:1)
你真的需要单独的ifs吗?
getSession(true)
返回当前会话,如果没有当前会话则创建新会话。