Partage de session avec spring-session

Un collègue m’a fait découvrir spring-session lors d’un échange sur la façon de stocker les sessions dans un tiers.

J’ai donc décidé de reprendre mon poc pour l’adapter à cette librairie.

La mise en place est assez simple. Il faut juste créer 2 classes.

1 pour la configuration (Config) et 1 pour que spring initialise mon application (Initializer). Dans une application existante la dernière classe n’est pas obligatoire. Il suffira de déclarer le bean config dans le fichier de context XML spring.

  • configuration:

Il suffit de placer l’annotation EnableRedisHttpSession et de déclarer un bean pour la connectionFactory. Par defaut JedisConnectionFactory se connecte sur la base redis en localhost. Dans mon cas, j’ai surchargé pour aller sur le host db (container redis)

Il faut supprimer aussi le fichier context.xml qui n’est plus nécessaire.
Il faut passer en servlet 3.0 pour que l’initialisation fonctionne.

et voilà, c’est tout.

On peut tester le tout avec les commandes:

 

  • Changements:

Par rapport au précédent article, le poc a subi quelques modifications pour fonctionner:

– passage à tomcat 8
– inclusion de spring 4
– inclusion de spring web
– inclusion de spring-data
– servlet 3.0

Les sources sont disponibles ici

Merci Raphaël pour l’info.