Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource
我们在SpringBoot中用Jedis来访问Redis,其中Redis是采用集群(单机没有本篇文章的问题)的方式,在启用Redis的时候碰到如上问题。
错误的核心信息如下:
Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource
完整信息如下:
// 下午4:: . ____ _ __ _ _
// 下午4:: /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
// 下午4::( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
// 下午4:: \\/ ___)| |_)| | | | | || (_| | ) ) ) )
// 下午4:: ' |____| .__|_| |_|_| |_\__, | / / / /
// 下午4:: =========|_|==============|___/=/_/_/_/
// 下午4:: :: Spring Boot :: (v1.5.1.RELEASE)
// 下午4::
// 下午4::40Nov , :: PM com.navercorp.pinpoint.bootstrap.config.DefaultProfilerConfig readBoolean
// 下午4::40INFO: profiler.jdk.http.param=true
// 下午4::40Nov , :: PM com.navercorp.pinpoint.bootstrap.config.DefaultProfilerConfig readBoolean
// 下午4::40INFO: profiler.jdk.http.param=true
// 下午4::40Nov , :: PM com.navercorp.pinpoint.bootstrap.config.DefaultProfilerConfig readBoolean
// 下午4::40INFO: profiler.jdk.http.param=true
// 下午4::52org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource [org/springframework/session/data/redis/config/annotation/web/http/RedisHttpSessionConfiguration.class]: Invocation of init method failed; nested exception is org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
// 下午4:: at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:)
// 下午4:: at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:)
// 下午4:: at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:)
// 下午4:: at org.springframework.beans.factory.support.AbstractBeanFactory$.getObject(AbstractBeanFactory.java:)
// 下午4:: at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:)
// 下午4:: at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:)
// 下午4:: at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:)
// 下午4:: at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:)
// 下午4:: at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:)
// 下午4:: at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:)
// 下午4:: at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:)
// 下午4:: at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:)
// 下午4:: at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:)
// 下午4:: at org.springframework.boot.SpringApplication.run(SpringApplication.java:)
// 下午4:: at org.springframework.boot.SpringApplication.run(SpringApplication.java:)
// 下午4:: at org.springframework.boot.SpringApplication.run(SpringApplication.java:)
// 下午4:: at com.zte.Application.main(Application.java:)
// 下午4:: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
// 下午4:: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:)
// 下午4:: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:)
// 下午4:: at java.lang.reflect.Method.invoke(Method.java:)
// 下午4:: at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:)
// 下午4:: at org.springframework.boot.loader.Launcher.launch(Launcher.java:)
// 下午4:: at org.springframework.boot.loader.Launcher.launch(Launcher.java:)
// 下午4:: at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:)
// 下午4::52Caused by: org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
// 下午4:: at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:)
// 下午4:: at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:)
// 下午4:: at org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration$EnableRedisKeyspaceNotifica
经查找,在Java代码中,我们使用了注解:@EnableRedisHttpSession,这个注解是用来开启Redis来集式式管理Session。
而在使用这种方式的时候,是需要Redis开启Keyspace Notifications功能的,默认是关闭的。
这个功能有一个参数来控制它,notify-keyspace-events,值为Egx。
可以通过在Redis.Config中配置。
也可以通过命令行来配置,如下所示:
redis-cli config set notify-keyspace-events Egx
然后重启Redis生效。
参考文档:
https://docs.spring.io/spring-session/docs/current/reference/html5/#api-redisoperationssessionrepository-sessiondestroyedevent
http://blog.csdn.net/xiaoyu411502/article/details/51248980
Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource的更多相关文章
- Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; neste
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFacto ...
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redisConnectionFactory' defined in class path resource
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'r ...
- MyBatis笔记----报错:Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/ij34/mybatis/applicationContext.xml]: Invocation of init method failed; nested exception is org.sp
四月 05, 2017 4:51:02 下午 org.springframework.context.support.ClassPathXmlApplicationContext prepareRef ...
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'stu' defined in class path resource [applicationContext.xml]: Instantiation of bean failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'stu' defined ...
- aused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method fai
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'roleDaoImpl' ...
- Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.HibernateException: Unable t
spring与hibernate整合然后出现如下错误: org.springframework.beans.factory.BeanCreationException: Error creating ...
- Spring AOP 报错org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'XXXXXX' defined in class path resource..........
完整报错如下: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'befo ...
- Error creating bean with name 'us' defined in class path resource [com/liuyang/test/DI/beans2.xml]: Cannot resolve reference to bean 'daoa' while setting bean property 'daoa'; nested exception is org.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'us' defined ...
- Error creating bean with name 'mapper' defined in class path resource [applicationcontext.xml]: Cannot resolve reference to bean 'factory' while setting bean property 'sqlSessionFactory'; nested excep
Error creating bean with name 'mapper' defined in class path resource [applicationcontext.xml]: Cann ...
随机推荐
- 实践:配置keepalived实现主备热备份功能
图: 配置文件: 主服务器的配置如下: global_defs { router_id NodeA}vrrp_instance VI_1 { state MASTER #设置为主服务器 interfa ...
- couldn't locate lint-gradle-api-26.1.2.jar for flutter project
Could not find com.android.tools.lint:lint-gradle:26.1.2 当我尝试构建发行版本APK 时导致报这种错误,无法发行,针对自己的项目作出了相关修改, ...
- (其他)SQL注入(转)
转自维基百科: SQL注入是一种代码注入技术,用于攻击数据驱动的应用程序,在这种应用程序中,恶意的SQL语句被插入输入字段中执行(例如将数据库内容转储给攻击者).[1] SQL注入必须利用应用程序软件 ...
- JavaScript大杂烩15 - 使用JQuery(下)
前面我们总结了使用各种selector拿到了jQuery对象了,下面就是对这个对象执行指定的行为了. 2. 操作对象 - 行为函数action 执行jQuery内置的行为函数的时候,JQuery自动遍 ...
- 第六章 Hyper-V 2012 R2 的检查点
"检查点"是 Windows Server 2012 R2 中对 Windows Server 2012 及以前版本的 Hyper-V"快照"功能的新称呼.之所 ...
- Ubuntu18.04 更换源
在虚拟机新建一个Ubuntu18.04.1-live-server-amd64当做服务器 在安装软件时报错: slave@slave:~$ sudo -s[sudo] password for sla ...
- Business talking in English
Talking one: A: Microsoft, this is Steve. B: Hi Steve, this is Richard from Third Hand Testing. I am ...
- 写jQuery插件该注意的
写好jQuery插件,有一些注意的地方(持续添加). 支持UMD 现在前端开发讲究模块化,所以jQuery插件也最好能够兼顾模块化. 模块化模式大概有几种: AMD.CommonJs.UMD. AMD ...
- Excel各种条件求和的公式汇总
经常和Execl打交道的人肯定觉得求和公式是大家时常用到的.Excel里有哪几路求和公式呢?他们的使用方式又是怎样?我为大家汇总一下. 使用SUMIF()公式的单条件求和: 如要统计C列中的数据,要求 ...
- oracle11g设置归档模式和非归档模式
1.首先查看当前数据库是否处于归档模式 可使用如下两种方式查看 1.1 select name, log_mode from v$database; log_mode的值为 ...