Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> HttpSession, как работает 
:(
    Опции темы
Sherst
Дата 21.6.2006, 01:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 26.10.2005

Репутация: 2
Всего: 2



Привет всем!
Собственно вопрос по сессиям.
Как я понял строка HttpSession session = request.getSession(false) возвращает текущий сеанс
если он был ранее создан иначе null. Допустим я создал сессию, установил время жизни, закрываю, открываю браузер - эта же строка все равно возвращает null.

Вот код:

Код

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class EnterSite extends HttpServlet {
    public void init() throws ServletException {
    }
    public void destroy() {
    }    
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{                
        String getSes;

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();        
        //
        HttpSession session = request.getSession(false);
        if (session == null) {
            session = request.getSession(true);
            session.setAttribute("ses1",":-D");
            session.setMaxInactiveInterval(1000);
            out.println("all done!");
        }    
        else {//Сеанс уже существует -  это условие никогда не выполняется ??? 
            getSes = (String)session.getAttribute("ses1");
            out.println("doGet :" + getSes);
        }    
    }
    public String getServletInfo() {
        return "Ля-ля-ля";
    }
}
 
PM MAIL   Вверх
FatherFrost
Дата 21.6.2006, 08:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Почетный Мороз
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 27.4.2005
Где: Крайний север

Репутация: 5
Всего: 6



Sherst, попробуй строку №17 заменить на HttpSession session = request.getSession();. 


--------------------
Задаю много глупых вопросов....
PM MAIL ICQ   Вверх
Sherst
Дата 21.6.2006, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 26.10.2005

Репутация: 2
Всего: 2



Как мне тогда проверить жива ли сессия заново не создавая ее. Ведь строка HttpSession session = request.getSession() вернет текущий сеанс, если же он мертв то создаст новый. 
PM MAIL   Вверх
Tirael
Дата 21.6.2006, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 31.1.2006
Где: Москва

Репутация: 1
Всего: 7



А у тебя в броузере куки включены ? Если нет, то сессия может и не запоминаться.

У меня как-то была диаметрально противоположная проблема  smile . Сессия создавалась даже тогда, когда не был вызван  метод request.getSession(true); 
И вот почему это происходило: Sessions, Servlets, JSPX, Откуда берется сессия ? 

Это сообщение отредактировал(а) Tirael - 21.6.2006, 11:56
--------------------
 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1055 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.