Я просматриваю перемещение сеанса пользователя с уровня приложения на экземпляр Redis. Я считаю, что все правильно настроено в соответствии с документацией (http://docs.spring.io/spring-session/docs/current/reference/html5/#httpsession), но я не вижу поведения, которое я ожидаю, и думаю, что я где-то пропустил шаг.Весенние сеансы HttpSession не может полностью заменить JSESSIONID
Применение в настоящее время использует HttpSession, поэтому я просто добавил следующее в контексте:
<context:annotation-config/>
<util:constant static-field="org.springframework.session.data.redis.config.ConfigureRedisAction.NO_OP"/>
<beans:bean class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration"/>
<beans:bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" p:host-name="HOSTNAME" p:port="6379" />
Добавлено следующее web.xml:
<filter>
<filter-name>springSessionRepositoryFilter</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSessionRepositoryFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Приложение строит, разворачивает и загружает на странице, но когда я смотрю на файлы cookie на странице, у меня есть как JSESSIONID, так и SESSION. JSESSIONID, который я знаю, используется Spring Security, и похоже, что SESSION используется Spring Session. Когда я смотрю внутрь redis, похоже, что SESSION - это тот, который хранится.
Другая проблема заключается в том, что пользовательские объекты сеанса (добавленные с использованием session.setAttribute) не отображаются в сеансе. Единственное, что появляется в сеансе, это ПОСЛЕ входа в систему и является объектом SPRING_SECURITY_CONTEXT. Когда я удаляю фильтр Spring Session, эти объекты добавляются в сеанс просто отлично.
Это обычное поведение, или у меня есть странный конфликт из-за моей установки?
https://stackoverflow.com/questions/44303504/spring-session-unable-save-session-to-redis –