tomcat集群使用nginx加redis实现session共享出现BUG

tomcat集群使用nginx加redis实现session共享出现BUG

问题描述:

启动 Tomcat 成功,操作报错信息如下:

  • Caused by: java.lang.ClassNotFoundException: com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve

触发原因:context.xml 配置信息和引入的jar版本不一致

解决方案:按照文档重新配置

使用jdk1.8,nginx1.11.4,redis-2.8.9,tomcat7.0.61

使用了commons-logging-1.2.jar,commons-pool2-2.4.2.jar,jedis-2.8.2.jar,tomcat-juli.jar,tomcat-redis-session-manage-tomcat7.jar

请问是什么原因,能给一个正确的jar和配置吗

这个实例和你遇到的问题似乎一样,可参考其解决方案。http://blog.csdn.net/onlysunnyboy/article/details/50513305

tomcat的,server.xml配置



 <Context path="" docBase="E:/GHSJO2O/o2o/trunk/web/target/o2o-1.0.0" reloadable="true">
            <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve"/>
            <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager" host="127.0.0.1" port="6379" database="0" maxInactiveInterval="60"/>
        </Context>

应该是你的配置文件中的Content的DTD约束的版本和你导入的jar包版本不一致

或者是你的本地仓库没有这个jar包?或者你没开redis?

redis已开启,可以get set,本地仓库用的是,Maven,直接把jar放进ide打包好后的web-inf里的lib里边了。

使用nginx搭建集群tomcat8,redis实现session共享,文件共享问题:http://blog.csdn.net/hua1586981/article/details/78132710