2009-10-19 1 views
3

Я использую Tomcat 6.2 и Spring MVC 2.5. Я заметил, что во время входа в систему я могу перезапустить Tomcat, и пользователь может продолжить просмотр без повторной аутентификации. Похоже, что это происходит от способности Tomcat продолжать сеансы через перезагрузки.Spring не восстанавливает постоянные сеансы tomcat в реестре сеанса после перезапуска?

Похоже, что эти постоянные сеансы не возвращают его в реестр Spring Spring. При получении информации о сеансе пользователя из реестра сеанса перед перезагрузкой я возвращаю информацию. Опубликуйте перезагрузку, хотя в реестре sesssion нет информации о пользователе.

Я пропустил какую-то конфигурацию, которая позволила бы Spring восстановить эти постоянные сеансы Tomcat после перезапуска? В противном случае, есть ли способ выгнать пользователя из веб-приложения без вызова sessionInformation.expireNow()?

+0

, что это «сессии реестра» вы имеете в виду? Spring использует память сеанса tomcat, у нее нет своей собственной. – skaffman

+0

Реестр сеансов, о котором я говорю, это внутренний класс Spring Security (SessionRegistryImpl), который заполняется при входе пользователя в систему с информацией о сеансе пользователя. При перезагрузке tomcat кажется, что tomcat способен сохранять и восстанавливать сеанс пользователя, и Spring каким-то образом принимает это как действительный сеанс, но в реестре сеанса Spring в этом сеансе нет данных. – trebor

+0

А, ты говоришь о Spring Security? Это совершенно отчетливо и отдельно от Spring MVC. – skaffman

ответ

1

Попробуйте эту конфигурацию:

<bean id="filterInvocationInterceptor" class="org.acegisecurity.intercept.web.FilterSecurityInterceptor"> 
    ... 
    <property name="alwaysReauthenticate" value="true"/> 
</bean> 
+0

Спасибо, это звучит многообещающе. Будет ли влияние производительности, если ваш магазин аутентификации, скажем, база данных? – trebor

+0

Да, я думаю, это повлияет на производительность. – rodrigoap

+1

@rodrigoap Можете ли вы немного рассказать о том, что представляет собой конфигурация? благодаря – Ittai

0

Являются ли объекты, которые вы хотите сохранить, а затем восстановлены из сеанса, сериализуемы?

+0

Сначала я получил исключения для сериализации и исправил их. Исправить их, похоже, не удалось. – trebor

Смежные вопросы