您可以使用嵌入式tomcat的彈簧啓動。然後,您只需添加用於redis和JoinFaces的依賴項,這是一個啓用了帶有springboot的JSF的庫。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<version>1.5.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.3.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.joinfaces</groupId>
<artifactId>jsf-spring-boot-starter</artifactId>
</dependency>
和一個非常簡單的配置
spring.session.store-type=REDIS
#REDIS
spring.redis.host=localhost
spring.redis.port=6379
但是,如果你想使用SessionScoped或ViewScoped豆與注射的JdbcTemplate比你會落得一個例外,我必須警告你。
org.springframework.data.redis.serializer.SerializationException: Cannot serialize; nested exception is org.springframework.core.serializer.support.SerializationFailedException: Failed to serialize object using DefaultSerializer; nested exception is java.io.NotSerializableException: org.springframework.jdbc.core.JdbcTemplate
我建議你嘗試http://projects.spring.io/spring-session/它支持redis,但是會替換容器會話管理。 – tsachev
序列化會話並存儲它?如果您希望會話複製設置羣集元素並啓用增量管理器。 – Stefan
我已經測試了spring-session,但是在我的項目中失敗了,我已經打開了有關我的問題https://github.com/spring-projects/spring-session/issues/29的問題。我不想使用增量管理器,而是一個擁有大量機器的解決方案。 – louvelg