我有一个JSF 2.0应用程序,我们称之为“MyApp”,使用SessionScoped
bean,使用下面的代码获取会话并在init上设置路径...什么时候JSESSIONID cookie添加到响应
HttpServletRequest request = (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest(); //Get request from external context
HttpSession session = request.getSession(false); //Get session and don't create one if it doesn't exist
session.getServletContext().getSessionCookieConfig().setPath(""); //Set the path in the session's cookie
我的问题是更新后的路径(“”)不会显示在响应会话cookie JSESSIONID
中,直到对应用程序发出第二个请求。第一个请求在包含应用程序的根上下文(“/ MyApp”)的默认路径的响应中获得一个JSESSIONID
Cookie。如果我重新加载页面,此第二个请求将得到一个包含更新路径(“”)的cookie(JSESSIONID
)的响应。
我似乎无法找到关于何时创建默认JSESSIONID
cookie并将其添加到响应的任何文档。我不确定是否在第一个响应的JSESSIONID
cookie中设置了更新后的会话路径,或者是否已被该页面的默认JSESSIONID
cookie设置和覆盖。
问题:
- 什么时候默认JSESSIONID的cookie被添加到反应?
- 是否可以禁用创建页面的默认JSESSIONID cookie?