Я устанавливаю объект сеанса в классе TestAction, и когда я пытаюсь получить объект session в TestServlet, он возвращает null. Любой, пожалуйста, расскажите, как передать сеанс из класса действия в сервлет в структуре Seam.Пропустить значения сеанса от действия до сервлета в структуре шва
@Scope(ScopeType.EVENT)
@Name("testAction ")
public class TestAction {
public void setSessionObj(){
FacesContext facesContext = FacesContext.getCurrentInstance();
HttpSession session = (HttpSession) facesContext.getExternalContext().getSession(false);
session.setAttribute("temp", "124563");
}
}
// Servlet начинается здесь
public class TestServlet extends HttpServlet {
public void init(ServletConfig servletConfig) throws ServletException {
super.init(servletConfig);
servletContext = servletConfig.getServletContext();
}
protected String doExecute(HttpServletRequest request,
HttpServletResponse response) throws Exception {
Session session = request.getSession(false);
String user1 = (String) session .getAttribute("temp");
}
}
Ниже приводится наблюдение на отладку сессии экземпляры
Я проверил экземпляр объекта сеанса в случае чего я получаю в действии и сервлета, они оба являются разными экземплярами Сессии. Для, например, экземпляр в действии StandardSession [41CBDED6EBBBECEBA001A70555F51CA5] и то, что им получать в сервлета StandardSession [EACBDED6E34BECEB3401A70555F51CA5] Любая причина, почему я получаю разные экземпляры сессии
Как насчет request.getSession()? –
Как именно вы вызываете сервлет? – BalusC