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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Умирает HttpSession 
V
    Опции темы
gema
Дата 30.8.2011, 04:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Через некоторое время при работе с проектом (java+Tomcat) умирает сессия и выходит запрос пользователя.
web.xml
Код

<session-config>
       <session-timeout>60</session-timeout>
 </session-config>

В чем может быть причина?

Это сообщение отредактировал(а) gema - 30.8.2011, 04:34
PM MAIL   Вверх
Nofate
Дата 30.8.2011, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



То есть у вас сессия закрывается раньше чем через указанные 60 минут?


--------------------
The future is not set, there is no fate but what we make for ourselves.
Нофейтово пространство и смежные области 
PM MAIL WWW ICQ   Вверх
gema
Дата 30.8.2011, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Именно так.Даже при работе,без простоя может появится запрос пользователя и начинается новая сессия.
PM MAIL   Вверх
priam220
Дата 30.8.2011, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Возможно, в процессе изучения томката были дернуты еще какие то настройки, типа время жизни сессии.. smile
Код

    <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />

вот здесь например

Это сообщение отредактировал(а) priam220 - 30.8.2011, 10:17
PM MAIL   Вверх
gema
Дата 30.8.2011, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Нет, параметры в server.xml такие.
Может context.xml неправильно настроен
Код

<Context antiJARLocking="true" debug="5" reloadable="true" crossContext="true"
         path="/plo">
    <Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" maxActive="100"
             maxIdle="30"
             maxWait="10"
             name="jdbc/mysql"
             password="..."
             username=".."
             type="javax.sql.DataSource"
             url="jdbc:mysql://localhost:3306/plo?characterEncoding=utf-8"
             autoReconnect="true"
             autoReconnectForPools="true"
             defaultAutoCommit="true"
             testOnBorrow="true"
             testWhileIdle="true"
             timeBeatweenEvictionRunsMillis="10000"
             minEvictableIdleTimeMillis="60000"
             validationQuery="Select 1 from dual"/>
               

</Context>

PM MAIL   Вверх
jk1
Дата 30.8.2011, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Посмотрите по коду, наверняка где-то по ошибке дергается

Код

 session.invalidate()



--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
gema
Дата 31.8.2011, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вообще убрала эту строчку session.invalidate(),не помогло.
Сделала HttpSessionListener.
Код

package spr;

import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpSession;

public class Listener  implements HttpSessionListener {
 

    public void sessionCreated(HttpSessionEvent se) {

        HttpSession session = se.getSession();

        ServletContext ctx = session.getServletContext();

        ctx.log("Session with id = " + session.getId() + " is started");

    }

    public void sessionDestroyed(HttpSessionEvent se) {

        HttpSession session = se.getSession();

        ServletContext ctx = session.getServletContext();

        ctx.log("Session with id = " + session.getId() + " is finished");

    }

    }

В logs вижу:
31.08.2011 10:32:40 org.apache.catalina.core.ApplicationContext log
INFO: Session with id = 6FD6E60D308CA1A7C88D737CFF825FF8 is started
31.08.2011 10:32:44 org.apache.catalina.core.ApplicationContext log
INFO: Session with id = 83D5A27F035548F6857B06E8D8ABC5B5 is started
31.08.2011 12:01:32 org.apache.catalina.core.ApplicationContext log
INFO: Session with id = 2F5EA3DBDCB1FEC448B27186DB47518C is started
То сессия новая стартует,но старая получается не завершается???
PM MAIL   Вверх
mbasil
Дата 3.9.2011, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



А может ваши пользователи отключают куки, а переопределение URL не на всех ссылках прописано. Можно проверить - разрыв сеанса происходит не на одном и том же пути?
PM MAIL   Вверх
gema
Дата 5.9.2011, 04:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Я догадалась в чем причина моей проблемы.Я работаю в NetBeans.Когда стартую свой проект и он запускается в браузере и т.д.А потом я вношу какие-то изменения в код и проект заново не стартую,а просто обновляю в необходимую страницу в браузере (F5).Это видимо и ведет к появлению новой сессии!!!
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.0545 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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