Spring / IntelliJ не очищает данные сессии при остановке - PullRequest
0 голосов
/ 22 декабря 2018

Я бежал в странной ситуации, которой у меня никогда не было.У меня есть приложение весенней загрузки, запущенное на intelliJ на ubuntu 18.

Мое приложение весенней загрузки работает в среде dev, подключенной к базе данных h2 в памяти.У меня есть сеанс входа в систему с Spring Security.

Странная вещь, если после того, как я остановил и перезапустил приложение, я все еще вошел в систему. И даже если я полностью перезапустил IntelliJ, сеанс не очищается.Даже база данных сохраняет свое состояние и не удаляется.
Только если я перезапущу всю систему, все будет очищено.

Внутри моего application.properties не установлено никаких специальных свойств.Все по умолчанию.

Если я остановлю приложение, появится следующий вывод консоли:

2018-12-22 11:11:19.385  INFO 10000 --- [      Thread-35] ConfigServletWebServerApplicationContext : Closing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@73abcbfa: startup date [Sat Dec 22 11:11:00 CET 2018]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@12e6f48a
2018-12-22 11:11:19.391  INFO 10000 --- [      Thread-35] o.s.j.e.a.AnnotationMBeanExporter        : Unregistering JMX-exposed beans on shutdown
2018-12-22 11:11:19.391  INFO 10000 --- [      Thread-35] o.s.j.e.a.AnnotationMBeanExporter        : Unregistering JMX-exposed beans
2018-12-22 11:11:19.395  INFO 10000 --- [      Thread-35] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'
2018-12-22 11:11:19.395  INFO 10000 --- [      Thread-35] .SchemaDropperImpl$DelayedDropActionImpl : HHH000477: Starting delayed drop of schema as part of SessionFactory shut-down'
2018-12-22 11:11:19.415  WARN 10000 --- [      Thread-35] o.s.b.f.support.DisposableBeanAdapter    : Invocation of destroy method failed on bean with name 'inMemoryDatabaseShutdownExecutor': org.h2.jdbc.JdbcSQLException:Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-197]
2018-12-22 11:11:19.417  INFO 10000 --- [      Thread-35] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
2018-12-22 11:11:19.419  INFO 10000 --- [      Thread-35] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.

Process finished with exit code 130 (interrupted by signal 2: SIGINT)

Ответы [ 2 ]

0 голосов
/ 09 августа 2019

https://github.com/spring-projects/spring-boot/wiki/spring-boot-1.3.0-m3-release-notes

Обновите Tomcat, Jetty и Undertow для сериализации данных сеанса, когда приложение остановлено, и загрузите их снова, когда приложение перезапустится.Постоянный сеанс не является обязательным;либо путем установки persistentSession в ConfigurableEmbeddedServletContainer, либо с помощью свойства server.session.persistent = true (постоянные сеансы по умолчанию включены с помощью Devtools).

При весенней загрузке 2 свойство имеет значение:

server.servlet.session.persistent=false # Whether to persist session data between restarts.

0 голосов
/ 04 января 2019

Полагаю, вы говорите о входе в сеть через браузер (или REST-клиент).Также я предполагаю, что вы используете настройки веб-безопасности по умолчанию.Затем ваш запрос на вход создает файл cookie с идентификатором сеанса, который возвращается браузеру и используется в следующих запросах, пока вы не закроете браузер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...